本文目录一览:
Java编程基础数组字符串集合
/*
* 字符串abcdefg,要求按逆序输出为gfedcba
*/
public class ReverseSort {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "abcdefg";
String sortedStr=reverseSort(str);
System.out.println(sortedStr);
}
public static String reverseSort(String str){
String str2="";
for(int i=str.length()-1;i>=0;i--){
str2+=String.valueOf(str.charAt(i));
}
return str2;
}
}
JAVA 数组和字符串操作问题
public class Shash {
String str=" ";
int oCount,gCount;
public void method() {
for(int i=0;i<str.length();i++) {
if(String.valueOf(str.charAt(i)).equals("o")) {
oCount++;
}
if(String.valueOf(str.charAt(i)).equals("g")) {
gCount++;
}
}
System.out.println(" 的长度是:"+str.length());
System.out.println("o的个数是:"+oCount);
System.out.println("o的个数是:"+gCount);
System.out.println(str.substring(4,10));
}
public static void main(String args[]) {
new Shash().method();
}
}
答案补充:s.equals(s1)
是 true
,而 s == s1
是 false
。
java 字符数组和字符串
您可以调用 String
的方法转换,如 toCharArray()
:
char[] array = "abc".toCharArray();
在java中如何定义一个字符串数组
- Java中定义一个字符串数组方式如下,
String
类型和其他基本类型相似,创建数组有两种方式:
String[] str = {"AAA", "BBB", "CCC"};
String str[] = {"AAA", "BBB", "CCC"};
- 推荐使用
ArrayList
:
ArrayList<String> strArray = new ArrayList<String>();
- 也可以写为如下格式:
class[] array;
array = new class[number];
其中前半句为声明,后半句为初始化。初始化必须要让编译器知道大小,声明的时候 Java 是不分配内存的,只有创建的时候也就是 new
的时候才会分配内存。
扩展资料:
- 数组是相同数据类型的元素的集合。
- 数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。
- 数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,
a[0]
表示名字为a
的数组中的第一个元素,a[1]
代表数组a
的第二个元素,以此类推。 - 对于 VB 的数组,表示数组元素时应注意:
- 下标要紧跟在数组名后,而且用圆括号括起来(不能用其他括号)。
- 下标可以是常量、变量或表达式,但其值必须是整数。
- 下标必须为一段连续的整数,其最小值称为下界,其最大值称为上界。不加说明时下界值默认为 1。 参考资料:字符数组_百度百科
Java如何将文本文档中的字符串读取到字符串数组?
使用 RandomAccessFile
先读取一次计算行数,然后 seek
重置到文件头部,再读取每行,赋值给数组。
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
public class Test {
// 此题目关键是根据文件内容确定二维数组的行数和列数
public static void main(String[] args) {
RandomAccessFile reader = null;
try {
reader = new RandomAccessFile("test.txt", "r");
int n = 0; // 行数
while (reader.readLine() != null) { // 第一次按行读取只为了计算行数
n++;
}
String[][] a = new String[n][];
reader.seek(0); // 重置到文件头部
int j;
String line;
String[] strs;
int i = 0;
while ((line = reader.readLine()) != null) { // 第二次按行读取是真正的读取数据
strs = line.split(" "); // 把读取到的一行数据以空格分割成子字符串数组
a[i] = new String[strs.length]; // 列数就是数组 strs 的大小,此句是逐行创建二维数组的列
for (j = 0; j < strs.length; j++) {
a[i][j] = strs[j]; // 逐行给二维数组的每一列赋值
}
i++;
}
for (i = 0; i < n; i++) {
for (j = 0; j < a[i].length; j++) {
System.out.println("a[" + i + "][" + j + "]=" + a[i][j]);
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
reader = null;
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
运行结果如图。