java数组存储字符串
⑴ 用java将字符串存入数组
一行存入一个数组吗?
String[]array;
stringstr;
inti;
FileReaderword=newFileReader("word.txt");
BufferedReaderbr=newBufferedReader(word);
while((str=br.readLine())!=null){
array[i]=str;
i++;
}
⑵ JAVA中怎样把用户输入的字符串存入数组中
import java.util.Scanner;
import java.util.InputMismatchException;
public class saveInputToArr {
public static void main(String[] args) {
Scanner scan = null;
try {
scan = new Scanner(System.in);
System.out.print( "请输入个数: " );
int inputNum = scan.nextInt();
if( inputNum <= 0 ) {
throw new Exception( "输入有误" );
}
System.out.println( "请输入数字: " );
int arr[] = new int[inputNum];
int num = 0;
int count = 0;
while( count < inputNum ) {
num = scan.nextInt();
arr[count] = num;
count++;
}
for( int i = 0; i < arr.length; i++ ) {
System.out.print( arr[i] + " " );
}
} catch ( Exception e ) {
throw new InputMismatchException( "" );
} finally {
try {
if ( scan != null ) {
scan.close();
}
} catch ( Exception e2 ) {
e2.printStackTrace();
}
}
}
}
运行结果为:
请输入个数:2
请输入数字:99
123
99 123
(2)java数组存储字符串扩展阅读
Java从输入中读取一个数组
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String str = sc.nextLine().toString();//用nextLine()可以读取一整行,包括了空格,next()却不能读取空格
String arr[] = str.split(" ");//拆分字符串成字符串数组
int a[] = new int[arr.length];
for(int j = 0; j < a.length; j++)
{
a[j] = Integer.parseInt(arr[j]);
System.out.print(a[j] + " ");
}
}
}
⑶ Java中,怎样把字符串和整数存到同一个数组中
importjava.util.Arrays;
importjava.util.HashMap;
importjava.util.Iterator;
importjava.util.Map;
publicclassTest{
publicstaticvoidmain(String[]args){
intlength=5;
HashMap[]map=newHashMap[length];
//向数组添加两个数,一个是String,一个是int
booleansetValue=setValue(map,0,1);
if(setValue){
System.out.println("添加成功!");
}
booleansetValue1=setValue(map,1,"a");
if(setValue1){
System.out.println("添加成功!");
}
//取出数组中第index位的值
intindex=1;
Iteratorit=map[index].keySet().iterator();
Objectkey;
while(it.hasNext()){
key=it.next();
if(key.equals("String")){
//StrValue为得到的String值
StringStrValue=(String)map[index].get(key);
System.out.println(key+":"+StrValue);
}else{
//intValue为得到的int值
intintValue=(int)map[index].get(key);
System.out.println(key+":"+intValue);
}
}
}
/**
*@paramindex向第几位添加
*@paramvalue添加的内容
**/
publicstaticbooleansetValue(HashMap[]map,intindex,Stringvalue){
if(index>map.length)
returnfalse;
HashMap<String,String>hashMap=newHashMap<String,String>();
hashMap.put("String",value);
map[index]=hashMap;
returntrue;
}
/**
*@paramindex向第几位添加
*@paramvalue添加的内容
**/
publicstaticbooleansetValue(HashMap[]map,intindex,intvalue){
if(index>map.length)
returnfalse;
HashMap<String,Integer>hashMap=newHashMap<String,Integer>();
hashMap.put("Integer",value);
map[index]=hashMap;
returntrue;
}
}
⑷ 在java中如何定义一个字符串数组
1. java中定义一个字符串数组方式如下,string类型和其他基本类型相似,创建数组有两种方式:
String[] str={"AAA","BBB","CCC"};
String str[]={"AAA","BBB","CCC"};
2.推荐用ArrayList<String> strArray = new ArrayList<String> (); 比较灵活。
3.也可以写为如下格式:class[] array; array = new class[number];其中前半句为声明,后半句为初始化,初始化必须要让编译器知道大小,声明的时候java是不分配内存的,只有创建的时候也就是new的时候才会分配内存。
(4)java数组存储字符串扩展阅读:
1.数组是相同数据类型的元素的集合。
2.数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
3.数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。
4.对于VB的数组,表示数组元素时应注意:下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号)。下标可以是常量,变量,或表达式,但其值必须是整数。下标必须为一段连续的整数,其最小值成为下界,其最大值成为上界。不加说明时下界值默认为1。
⑸ java中如何将字符串数组保存在数据库里
既然是数组,有个简便的方法 你循环出来用逗号表达式来分隔例如下边:
String str[] ={"abc","cdf","aaa"};
StringBuffer buffer =new StingBuffer();
for(int i=0;i<str.length;i++){
buffer.append(str[i]+",");
}
用这个buffer.toString转换成字符串 存到数据库中,下次取这个数据的数据时候可以用String类的split方法来得到这个字符串数组
例如:String str ="abc,cbd,"aaa";
String str1[] =str.split(",")
⑹ java中如何创建字符串数组
java中定义一个字符串数组方式如下:
1.String[] str={"AAA","BBB","CCC"};
2.String str[]={"AAA","BBB","CCC"};
string类型和其他基本类型相似,创建数组时,有上述两种方式。
数组可以分为一维数组和二维数组;
一维数组的语法格式:
数组元素类型 数组名[ ]={数组元素的初值,。。。}
如: int sa[]={1,2,3}
二维数组声明的语法格式:
数组元素类型 数组名[ ][ ]
如:int a[][]=new int [2[3]
都是一个原理的,自己换一下自己想要定义的数组类型就可以了。
字符串数组的创建:
String a =new String("Java");
不过推荐用ArrayList strArray = new ArrayList (); 比较灵活。
⑺ Java中如何实现用户输入多个字符串并存储在字符串数组中
int n = Integer.valueOf(input.nextLine().replaceAll("[^\d]", ""));
改成这样即可;因为你的输入函数,你之前调用的它int类型方法;
改成这样,就类似你一直用的都是字符串,区别你第一次的字符串被Integer对象转成数字了;
⑻ java一维数组存字符串,存的是引用还是字符串本身
1、存的是引用,即存的是字符串的首地址。
2、这个方法array是深度复制,由JVM调用native来完成,看一下源码就可以发现了。
由它完成的复制,都是深度的,不管是简单数据类型还是复杂数据类型,都会得到不同的引用。
希望能解决问题了。
⑼ JAVA中怎样把字符存到数组中
java将字符存到数组中,可以使用scanner类接受用户从键盘输入的字符,然后通过for循环语句,放入数组中,如下代码:
importjava.util.Scanner;
publicclassc12{
publicstaticvoidmain(String[]args){
Scanners=newScanner(System.in);
System.out.println("请输入100个字母");//输入的字母数量
String[]a=newString[100];
for(inti=0;i<=100;i++)
a[i]=s.next();//放入数组中
for(inti=0;i<=100;i++){
System.out.print(a[i]+" ");
}
}
}