Java 将字符串存储到int[]数组中
我有一个字符串Java 将字符串存储到int[]数组中,java,Java,我有一个字符串string strings=“100.122.323.344;543.433.872.438;218.544.678.322” 我想像这样存储到int[]中int[]={{100122323344},{543433872438},{218544678322} 下面是示例代码 public static void main(String[] args) { // TODO Auto-generated method stub String strings = "1
string strings=“100.122.323.344;543.433.872.438;218.544.678.322”代码>
我想像这样存储到int[]中int[]={{100122323344},{543433872438},{218544678322}
下面是示例代码
public static void main(String[] args) {
// TODO Auto-generated method stub
String strings = "100.122.323.344;543.433.872.438;218.544.678.322";
strings = strings.replace(".", ",");
System.out.println(strings);
String[] coordinates = strings.split(";");
String[] rect=null;
int[] intcoordinates;
for(int i=0;i<coordinates.length;i++)
{
//System.out.println(coordinates[i]);
rect= coordinates[i].split(",");
for(int j=0;j<rect.length;j++)
{
}
}
}
publicstaticvoidmain(字符串[]args){
//TODO自动生成的方法存根
String strings=“100.122.323.344;543.433.872.438;218.544.678.322”;
字符串=字符串。替换(“.”,“,”);
System.out.println(字符串);
String[]坐标=strings.split(“;”);
字符串[]rect=null;
int[]int坐标;
对于(int i=0;i您可以使用
int intrect = Integer.parseInt(rect[j]);
将rect[j]转换为int
public static void main(String[] args) {
// TODO Auto-generated method stub
String strings = "100.122.323.344;543.433.872.438;218.544.678.322";
strings = strings.replace(".", ",");
System.out.println(strings);
String[] coordinates = strings.split(";");
String[] rect = null;
int[][] intcoordinates = new int[3][4]; // initialize the size of the array
for (int i = 0; i < coordinates.length; i++) {
// System.out.println(coordinates[i]);
rect = coordinates[i].split(",");
for (int j = 0; j < rect.length; j++) {
intcoordinates[i][j] = Integer.parseInt(rect[j]);
}
}
}
publicstaticvoidmain(字符串[]args){
//TODO自动生成的方法存根
String strings=“100.122.323.344;543.433.872.438;218.544.678.322”;
字符串=字符串。替换(“.”,“,”);
System.out.println(字符串);
String[]坐标=strings.split(“;”);
字符串[]rect=null;
int[][]intcoordinates=new int[3][4];//初始化数组的大小
对于(int i=0;i
INT坐标包含[[100122323344]、[54343432872438]、[218544678322]]执行结束时。这是转换的最终结果。初始化带有行和列的二维数组intcoordinates
。如果不知道行大小,则应计算最大行大小。然后将String
转换为int
并分配给此数组
int[][] intcoordinates=new int[coordinates.length][countMaxRow(coordinates)];
for(int i=0;i<coordinates.length;i++){
rect= coordinates[i].split(",");
for(int j=0;j<rect.length;j++){
intcoordinates[i][j]=Integer.parseInt(rect[j]);
}
}
System.out.println(Arrays.deepToString(intcoordinates));
int[]intcoordinates=新的int[coordinates.length][countMaxRow(coordinates)];
对于(int i=0;i,从概念上讲,扫描仪和集合应该适合您:
String strings = "100.122.323.344;543.433.872.438;218.544.678.322";
Scanner scanner = new Scanner(new ByteArrayInputStream(strings.getBytes()));
scanner.useDelimiter(";");
List<List<Integer>> list = new ArrayList<>();
while(scanner.hasNext())
{
Scanner scanner2 = new Scanner(new ByteArrayInputStream(scanner.next().getBytes()));
scanner2.useDelimiter("\\D");
List<Integer> lst = new ArrayList<>();
while(scanner2.hasNextInt())
lst.add(scanner2.nextInt());
list.add(lst);
}
System.out.println("Lists: ");
for(List<Integer> lst : list)
System.out.println(lst);
String strings=“100.122.323.344;543.433.872.438;218.544.678.322”;
Scanner Scanner=new Scanner(new ByteArrayInputStream(strings.getBytes());
scanner.useDelimiter(“;”);
列表=新的ArrayList();
while(scanner.hasNext())
{
Scanner scanner2=新扫描仪(新的ByteArrayInputStream(Scanner.next().getBytes());
扫描程序2.useDelimiter(\\D”);
List lst=new ArrayList();
while(scanner2.hasNextInt())
lst.add(scanner2.nextInt());
列表。添加(lst);
}
System.out.println(“列表:”);
对于(列表lst:List)
系统输出打印项次(lst);
首先,您想将值存储为int,您应该知道{100122323344}、{543433872438}、{218544678322}
是一个二维数组,所以它是int[][]
。然后数组必须是init,可以计算出行和列
int[][] intcoordinates = new int[3][4]; // init the array, the row and the col can be figured.
for(int i=0; i<coordinates.length; i++)
{
//System.out.println(coordinates[i]);
rect = coordinates[i].split(",");
for(int j=0; j<rect.length; j++)
{
intcoordinates[i][j] = Integer.parseInt(rect[j]);
}
}
System.out.println(Arrays.deepToString(intcoordinates));
int[]intcoordinates=new int[3][4];//初始化数组时,可以对行和列进行配置。
对于(int i=0;iUse Integer.parseInt(),所以问题只是“如何将字符串转换为int”?您可以简单地得到一千个答案?为什么要用逗号替换每个句点?看起来非常不必要。但是如何获得输出,因为我期望int[]={{100122323344},{543433872438},{218544678322}intcoordinates应该是一个二维数组。在执行结束时,intcoordinates等于[[100122323344]、[5434343872438]、[218544678322]。这是您想要的数组。
int[][] intcoordinates = new int[3][4]; // init the array, the row and the col can be figured.
for(int i=0; i<coordinates.length; i++)
{
//System.out.println(coordinates[i]);
rect = coordinates[i].split(",");
for(int j=0; j<rect.length; j++)
{
intcoordinates[i][j] = Integer.parseInt(rect[j]);
}
}
System.out.println(Arrays.deepToString(intcoordinates));