一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 舉例講解Java中數組和字符串類型的使用方法

舉例講解Java中數組和字符串類型的使用方法

2020-01-04 17:05selFire JAVA教程

這篇文章主要介紹了舉例講解Java中數組和字符串類型的使用方法,是Java入門學習中的基礎知識,需要的朋友可以參考下

Java數組

數組是具有相同數據類型的一組數據的集合,Java支持多為數組,一維數組的每個基本單元都是基本數據類型的數據,二維數組就是每個基本單元是一維數組的一維數組,以此類推,n維數組的每個基本單元都是n-1為數組的n-1維數組。下面以一維數組為例說明Java數組的用法。

1、數組聲明

數組聲明有如下兩種形式(方括號的位置不同):

?
1
2
int arr[];
int[] arr2;

 

2、數組初始化

數組初始化也有兩種形式,如下(使用new或不使用new):

?
1
2
int arr[] = new int[]{1, 3, 5, 7, 9};
int[] arr2 = {2, 4, 6, 8, 10};

 

3、遍歷數組

遍歷數組可用for/foreach,如下:

  

?
1
2
3
4
5
6
7
8
9
10
public static void main(String[] args) {
   int arr[] = new int[]{1, 3, 5, 7 ,9};
   int[] arr2 = {2, 4, 6, 8, 10};
   for (int i = 0; i < arr.length; ++i) {
     System.out.print(arr[i] + "\t"); // 1 3 5 7 9
   }
   for (int x: arr2) {
     System.out.print(x + "\t"); // 2 4 6 8 10
   }
 }

4、Arrays.fill()填充數組

使用Arrays類的靜態方法,需要import包java.util.Arrays,定義了許多重載方法。

void fill(int[] a, int val)全部填充
void fill(int[] a, int fromIndex, int toIndex, int val)填充指定索引的元素

       

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int[] arr3 = new int[5];
   for (int x: arr3) {
     System.out.print(x + "\t"); // 0 0 0 0 0 全部初始化為0
   }
   System.out.println();
   Arrays.fill(arr3, 10);
   for (int x: arr3) {
     System.out.print(x + "\t"); // 10 10 10 10 10 全部填充為10
   }
   System.out.println();
   Arrays.fill(arr3, 1, 3, 8);
   for (int x: arr3) {
     System.out.print(x + "\t"); // 10 8 8 10 10 填充指定索引
   }
   System.out.println();


5、Arrays.sort()對數組排序

void sort(int[] a)全部排序
void sort(int[] a, int fromIndex, int toIndex)排序指定索引的元素

       

?
1
2
3
4
5
6
7
8
9
10
11
12
int[] arr4 = {3, 7, 2, 1, 9};
   Arrays.sort(arr4);
   for (int x: arr4) {
     System.out.print(x + "\t"); // 1 2 3 7 9
   }
   System.out.println();
   int[] arr5 = {3, 7, 2, 1, 9};
   Arrays.sort(arr5, 1, 3);
   for (int x: arr5) {
     System.out.print(x + "\t"); // 3 2 7 1 9
   }
   System.out.println();

6、Arrays.copyOf()復制數組

int[] copyOf(int[] original, int newLength)復制數組,指定新數組長度
int[] copyOfRange(int[] original, int from, int to)復制數組,指定所復制的原數組的索引

     

?
1
2
3
4
5
6
7
8
9
10
11
int[] arr6 = {1, 2, 3, 4, 5};
  int[] arr7 = Arrays.copyOf(arr6, 5); // 1 2 3 4 5
  int[] arr8 = Arrays.copyOfRange(arr6, 1, 3); // 2 3
  for (int x: arr7) {
    System.out.print(x + "\t");
  }
  System.out.println();
  for (int x: arr8) {
    System.out.print(x + "\t");
  }
  System.out.println();

Java字符串
Java字符串類型為String類,下面介紹如何操作字符串。

1、字符串連接

字符串連接使用“+”符號,如下例子:

?
1
2
3
String s = new String("Hello");
String s2 = new String("World");
System.out.println(s + " " + s2); // Hello World

2、獲取字符串長度

獲取字符串長度使用str.length(),如下例子:

?
1
2
String s3 = new String("Hello Java");
System.out.println(s3.length()); // 10

3、獲取指定字符串的索引

獲取指定字符串的索引使用str.indexOf(substr)、str.lastIndexOf(substr),如下例子:

?
1
2
3
String s4 = new String("how are you");
System.out.println(s4.indexOf("o")); // 1 從頭開始查找
System.out.println(s4.lastIndexOf("o")); // 9 從尾開始查找

4、獲取指定索引的字符

獲取指定索引的字符使用str.charAt(index),如下例子:

?
1
2
String s5 = new String("Hello Java");
System.out.println(s5.charAt(4)); // o

5、去除字符串中的空格

去除字符串中的空格有多種方法,使用str.trim()或str.replaceAll(regex, replacement),也可以借用StringTokenizer類對字符串使用空格進行分隔,使用前需要import包java.util.StringTokenizer,如下例子:

      

?
1
2
3
4
5
6
7
8
9
10
11
12
String s6 = new String(" Hello Java ");
   String s7 = s6.trim(); // 去除字符串開始、結尾處的空格
   String s8 = s6.replaceAll(" ", ""); // 替換字符串中的全部空格
   StringTokenizer st = new StringTokenizer(s6, " "); // 使用空格分隔字符串
   StringBuffer sb = new StringBuffer();
   while (st.hasMoreTokens()) {
     sb.append(st.nextToken());
   }
   System.out.println("\"" + s6 + "\"" + "length = " + s6.length()); // " Hello Java "length = 14
   System.out.println("\"" + s7 + "\"" + "length = " + s7.length()); // "Hello Java"length = 10
   System.out.println("\"" + s8 + "\"" + "length = " + s8.length()); // "HelloJava"length = 9
   System.out.println("\"" + sb.toString() + "\"" + "length = " + sb.toString().length()); // "HelloJava"length = 9

6、替換字符串

替換字符串可以替換全部子串,也可以替換第一個子串,如下例子:

       

?
1
2
3
4
5
String sr = new String("abc abd bcd");
   String sr2 = sr.replace("ab", "xx"); // 替換全部子串
   String sr3 = sr.replaceFirst("ab", "xx"); // 替換第一個字串
   System.out.println(sr2); // "xxc xxd bcd"
   System.out.println(sr3); // "xxc adb bcd"

7、字符串判等

字符串判等有多種情況,例如字符串內容判等、是否忽略大小寫、內存地址判等、字符串開始或結尾處判斷等,如下例子:

     

?
1
2
3
4
5
6
7
8
9
10
11
String se = new String("Summer is so Hot");
  String se1 = new String("Summer is so Hot");
  String se2 = new String("summer is so hot");
  String se3 = se;
  System.out.println(se == se1); // false 比較內存而非字符串內容
  System.out.println(se == se3); // true
  System.out.println(se.equals(se1)); // true 比較字符串內容
  System.out.println(se.equals(se2)); // false
  System.out.println(se.equalsIgnoreCase(se2)); // true 忽略大小寫
  System.out.println(se2.startsWith("summer")); // true 字符串開始
  System.out.println(se2.endsWith("cold")); // false 字符串結尾

8、字符串大小寫轉換

字符串大小寫轉換如下例子:

     

?
1
2
3
4
String sc = new String("hello WORLD");
  String scl = sc.toLowerCase(); // hello world 轉換為小寫
  String scu = sc.toUpperCase(); // HELLO WORLD 轉換為大寫
  System.out.println(scl + " " + scu);

9、字符串分隔

字符串分隔如下例子:

     

?
1
2
3
4
5
String ss = new String("abc,def,g,h");
  String[] ss2 = ss.split(","); // 以逗號分隔
  for (String x: ss2) {
    System.out.print(x + "\t"); // abc def g h
  }

10、格式化字符串

字符串格式化有多種形式,如日期格式化、時間格式化、進制轉換等,Date類的使用需要import包java.util.Date,如下例子:

?
1
2
3
4
5
Date d = new Date();
System.out.println(d); // Wed Jul 22 16:00:36 CST 2015 默認格式
System.out.println(String.format("%tm", d)); // 07 兩位數月份
System.out.println(String.format("%tH", d)); // 16 兩位24小時制
System.out.println(String.format("%x", 256)); // 100 十六進制

11、String、StringBuffer、StringBuilder類比較

String:字符串常量,不可變對象,變量內容改變時實際上是生成了一個新的String對象,當多次、頻繁改變變量內容時,會對系統性能產生影響,特別是由此導致GC開始工作時,程序速度就會變的很慢。

StringBuffer:字符串變量,線程安全,變量內容改變時其實是對同一個對象進行操作,效率比String類型高。

StringBuilder:字符串變量,與StringBuffer兼容,卻是非線程安全的,如果是單線程,優先使用StringBuilder,它比StringBuffer要快。

延伸 · 閱讀

精彩推薦
  • JAVA教程Java獲得指定區間數的方法

    Java獲得指定區間數的方法

    這篇文章主要介紹了Java獲得指定區間數的方法,涉及java數值運算的相關技巧,需要的朋友可以參考下 ...

    hitxueliang1232019-12-19
  • JAVA教程java實現選擇排序算法

    java實現選擇排序算法

    本篇文章介紹直接選擇排序算法的JAVA實現。直接選擇排序算法的基本思想是:n個記錄的文件的直接選擇排序可經過n-1趟直接選擇排序得到有序結果 ...

    hebedich4792019-12-15
  • JAVA教程解決dubbo錯誤ip及ip亂入問題的方法

    解決dubbo錯誤ip及ip亂入問題的方法

    今天小編就為大家分享一篇關于解決dubbo錯誤ip及ip亂入問題的方法,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    雙斜杠少年5332019-06-24
  • JAVA教程JAVA Vector源碼解析和示例代碼

    JAVA Vector源碼解析和示例代碼

    本文的學習方式是先對JAVA Vector有個整體認識,然后再學習它的源碼,最后再通過實例來學會使用。 ...

    java代碼網4702019-10-18
  • JAVA教程Drools Fusion(CEP)定義及使用方法講解

    Drools Fusion(CEP)定義及使用方法講解

    今天小編就為大家分享一篇關于Drools Fusion(CEP)定義及使用方法講解,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨...

    雙斜杠少年3632019-06-24
  • JAVA教程java實現簡單美女拼圖游戲

    java實現簡單美女拼圖游戲

    這篇文章主要介紹了java實現簡單美女拼圖游戲的相關資料,需要的朋友可以參考下 ...

    hebedich2832019-12-14
  • JAVA教程java解壓zip文件示例

    java解壓zip文件示例

    這篇文章主要介紹了java解壓zip文件示例,在獲得一個以Zip格式壓縮的文件之后,需要將其進行解壓縮,還原成壓縮前的文件,下面是代碼示例 ...

    java教程網2932019-11-12
  • JAVA教程java觀感示例分享

    java觀感示例分享

    這篇文章主要介紹了java觀感示例,該實例查詢并生成了系統中存在觀感對應的按鈕并在用戶點擊相應按鈕時將窗口的觀感切換到指定的觀感上 ...

    java技術網1162019-11-12
主站蜘蛛池模板: 四虎精品成人a在线观看 | 成人中文字幕在线高清 | 国产免费精彩视频 | 99re8在线精品视频免费播放 | 97精品国产高清在线看入口 | 好爽好粗 | 美女脱了内裤让男桶爽 | 操闺蜜| 九九精品视频在线免费观看 | 扒开腿开嫩苞 | 日韩高清一区二区三区不卡 | 日日夜夜撸影院 | 爱情岛论坛亚洲一号路线 | 8x8x极品国产在线 | hd最新国产人妖ts视频 | 久久久精品成人免费看 | 国产亚洲福利精品一区二区 | 2020年国产精品午夜福利在线观看 | 精品无码久久久久久久动漫 | 亚洲精品视频专区 | 女同学高中你下面好紧 | ts人妖国产一区 | 国产按摩系列 | yellow最新视频2019 | 国内精品国语自产拍在线观看55 | 午夜福利电影网站鲁片大全 | 日韩精品视频福利资源站 | 天堂网在线网站成人午夜网站 | 强漂亮白丝女教师小说 | 日本网| a级aaaaaaaa毛片 | 热99这里有精品综合久久 | 小柔的性放荡羞辱日记 | 欧美性另类69xxxx | 国产精品va在线观看手机版 | 四虎影视永久在线观看 | 免费日本在线视频 | 欧美牛逼aa| 日本午夜vr影院新入口 | 国内精品视频一区二区三区八戒 | 2020年精品国产午夜福利在线 |