この比較的単純な質問で皆さんを悩ましくしてもお詫び申し上げますが、replaceAll( "\。"、 "")を呼び出すとnullポインタ例外が発生し続けます。間違いなく、それは私がちょうど得ていない単純なものです。Java:replaceAllを使用したヌルポインタ例外
IPAddressの簡単な要約: 上記の最初のクラスには、IPAddressTester(後で説明します)のString値がipStringとしてクラスIPAddressに格納されます。文字列自体は###。###。###。##の形式になります。最終的な目標は、この文字列のピリオドを取り除き、結果のトークンを結合し、後で操作するために整数に変換することです(hashCodeメソッドを参照)。明らかに、このクラスは不完全で、他の問題や問題がある可能性がありますが、現在replaceAllによるヌルポインタエラーに焦点を当てています。
IPAddressTestの簡単な要約: 名前のとおり、これはIPAddressをテストします。基本的には「ドライバ」。
package ipResolver;
import java.util.Arrays;
import java.util.StringTokenizer;
import java.util.Scanner;
public class IPAddress implements Comparable<IPAddress>{
private String ipString;
private int ipInt;
private int ipHash;
//Constructor
public IPAddress(String ip){
ipString = ip;
}
//--------------------------------Begin Error Region
String tmpString = ipString.replaceAll("\\.","");
//--------------------------------End Error Region
public int hashCode(int ipToBeHashed){
return ipHash;
}
public boolean equals(Object o){
return ipString.equals(String.valueOf(o));
}
public int compareTo(IPAddress IP){
return ipInt - IP.ipInt;
}
public String toString()
{
return ipString;
}
public void gettmpString(){
System.out.println(tmpString);
}
}
IPAddressTestクラス
再びpackage test_code;
import java.util.Arrays;
import ipResolver.IPAddress;
public class IPAddressTest {
public static void main(String args[]){
String testString = "130.191.208.70";
IPAddress ipAdd = new IPAddress(testString);
System.out.println(ipAdd);
ipAdd.gettmpString();
}
}
、これであなたのすべてを悩まため心からの謝罪が、私はこの質問はおそらく(これはできればしません、単純な1つのまたは2文の答えを持っています推測していますahemはあまりにも侮辱している;-))。
優秀!あなたは聖人です!本当にありがとう! :D – user1309459