字符串
在Java編程中廣泛使用的字符串是一系列字符,在Java編程語言中,字符串是對象。
Java平臺提供String類來創(chuàng)建和操作字符串。
創(chuàng)建字符串創(chuàng)建字符串的最直接方法是編寫:
String greeting = "Hello world!";
在這種情況下,"Hello world!"是一個字符串文字 — 代碼中的一系列字符,用雙引號括起來,每當(dāng)它在代碼中遇到字符串文字時,編譯器就會創(chuàng)建一個帶有其值的String對象 — 在本例中為Hello world!。
與任何其他對象一樣,你可以使用new關(guān)鍵字和構(gòu)造函數(shù)創(chuàng)建String對象,String類有13個構(gòu)造函數(shù),允許你使用不同的源提供字符串的初始值,例如字符數(shù)組:
char[] helloArray = { "h", "e", "l", "l", "o", "." }; String helloString = new String(helloArray); System.out.println(helloString);
此代碼段的最后一行顯示hello.。
注意:String類是不可變的,因此一旦創(chuàng)建,就無法更改String對象,String類有許多方法,其中一些將在下面討論,似乎可以修改字符串,由于字符串是不可變的,因此這些方法真正做的是創(chuàng)建并返回包含操作結(jié)果的新字符串。字符串長度
用于獲取對象信息的方法稱為訪問器方法,可以與字符串一起使用的一種訪問器方法是length()方法,它返回字符串對象中包含的字符數(shù),在執(zhí)行以下兩行代碼后,len等于17:
String palindrome = "Dot saw I was Tod"; int len = palindrome.length();
palindrome是一個對稱的單詞或句子 — 它向前和向后拼寫相同,忽略大小寫和標(biāo)點(diǎn)符號,這是一個簡短而低效的程序來反轉(zhuǎn)palindrome字符串,它調(diào)用String方法charAt(i),它返回字符串中的第i個字符,從0開始計數(shù)。
public class StringDemo { public static void main(String[] args) { String palindrome = "Dot saw I was Tod"; int len = palindrome.length(); char[] tempCharArray = new char[len]; char[] charArray = new char[len]; // put original string in an // array of chars for (int i = 0; i < len; i++) { tempCharArray[i] = palindrome.charAt(i); } // reverse array of chars for (int j = 0; j < len; j++) { charArray[j] = tempCharArray[len - 1 - j]; } String reversePalindrome = new String(charArray); System.out.println(reversePalindrome); } }
運(yùn)行該程序會產(chǎn)生以下輸出:
doT saw I was toD
要完成字符串反轉(zhuǎn),程序必須將字符串轉(zhuǎn)換為字符數(shù)組(第一個for循環(huán)),將數(shù)組轉(zhuǎn)換為第二個數(shù)組(第二個for循環(huán)),然后再轉(zhuǎn)換回字符串,String類包含一個方法getChars(),用于將字符串或字符串的一部分轉(zhuǎn)換為字符數(shù)組,因此我們可以在上面的程序中替換第一個for循環(huán):
palindrome.getChars(0, len, tempCharArray, 0);連接字符串
String類包括用于連接兩個字符串的方法:
string1.concat(string2);
這將返回一個新字符串,該字符串為string1,并在末尾添加了string2。
你還可以將concat()方法與字符串文字一起使用,如下所示:
"My name is ".concat("Rumplestiltskin");
字符串通常使用+運(yùn)算符連接,如:
"Hello," + " world" + "!"
結(jié)果是:
"Hello, world!"
+運(yùn)算符廣泛用于打印語句,例如:
String string1 = "saw I was "; System.out.println("Dot " + string1 + "Tod");
這將打?。?/p>
Dot saw I was Tod
這種連接可以是任何對象的混合,對于不是String的每個對象,調(diào)用其toString()方法將其轉(zhuǎn)換為String。
注意:Java編程語言不允許文字字符串跨越源文件中的行,因此必須在多行字符串中的每行末尾使用+連接運(yùn)算符,例如:
String quote = "Now is the time for all good " + "men to come to the aid of their country.";
使用+連接運(yùn)算符在行之間斷開字符串在print語句中非常常見。
創(chuàng)建格式字符串你已經(jīng)看到使用printf()和format()方法來打印帶有格式化數(shù)字的輸出,String類有一個等效的類方法format(),它返回一個String對象而不是一個PrintStream對象。
使用String的static format()方法可以創(chuàng)建一個可以重用的格式化字符串,而不是一次性打印語句,例如替換:
System.out.printf("The value of the float " + "variable is %f, while " + "the value of the " + "integer variable is %d, " + "and the string is %s", floatVar, intVar, stringVar);
你可以這樣寫:
String fs; fs = String.format("The value of the float " + "variable is %f, while " + "the value of the " + "integer variable is %d, " + " and the string is %s", floatVar, intVar, stringVar); System.out.println(fs);字符串總結(jié)
字符串是一系列字符,廣泛用于Java編程,在Java編程語言中,字符串是對象,String類有60多個方法和13個構(gòu)造函數(shù)。
最常見的情況是,創(chuàng)建一個帶有如下語句的字符串:
String s = "Hello world!";
而不是使用其中一個String構(gòu)造函數(shù)。
String類有許多方法可以查找和檢索子字符串,然后可以使用+連接運(yùn)算符輕松地將它們重新組合成新的字符串。
String類還包括許多實(shí)用方法,其中包括split()、toLowerCase()、toUpperCase()和valueOf()。后一種方法在將用戶輸入字符串轉(zhuǎn)換為數(shù)字時是必不可少的,Number子類還具有將字符串轉(zhuǎn)換為數(shù)字的方法,反之亦然。
除了String類之外,還有一個StringBuilder類,使用StringBuilder對象有時比使用字符串更有效,StringBuilder類提供了一些對字符串有用的方法,其中包括reverse(),但是,通常,String類具有更廣泛的方法。
可以使用StringBuilder構(gòu)造函數(shù)將字符串轉(zhuǎn)換為字符串構(gòu)建器,可以使用toString()方法將字符串構(gòu)建器轉(zhuǎn)換為字符串。
上一篇:字符 下一篇:在數(shù)字和字符串之間轉(zhuǎn)換文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/72886.html
Java? 教程 Java教程是為JDK 8編寫的,本頁面中描述的示例和實(shí)踐沒有利用在后續(xù)版本中引入的改進(jìn)。 Java教程是希望使用Java編程語言創(chuàng)建應(yīng)用程序的程序員的實(shí)用指南,其中包括數(shù)百個完整的工作示例和數(shù)十個課程,相關(guān)課程組被組織成教程。 覆蓋基礎(chǔ)知識的路徑 這些教程以書籍的形式提供,如Java教程,第六版,前往Amazon.com購買。 入門 介紹Java技術(shù)和安裝Java開發(fā)軟件并使用...
掃描 編程I/O通常涉及轉(zhuǎn)換人們喜歡使用的整齊格式的數(shù)據(jù),為了幫助你完成這些工作,Java平臺提供了兩個API,掃描器API將輸入分解為與數(shù)據(jù)位相關(guān)聯(lián)的單個標(biāo)記,格式化API將數(shù)據(jù)組裝成格式良好、可讀的形式。 Scanner類型的對象對于將格式化輸入分解為標(biāo)記并根據(jù)其數(shù)據(jù)類型轉(zhuǎn)換單個標(biāo)記非常有用。 將輸入分解為標(biāo)記 默認(rèn)情況下,掃描器使用空格分隔標(biāo)記(空格字符包括空格、制表符和行終止符,有關(guān)完整列...
摘要:未來的主要發(fā)布基于。在中調(diào)用函數(shù)支持從代碼中直接調(diào)用定義在腳本文件中的函數(shù)。下面的函數(shù)稍后會在端調(diào)用為了調(diào)用函數(shù),你首先需要將腳本引擎轉(zhuǎn)換為。調(diào)用函數(shù)將結(jié)果輸出到,所以我們會首先看到輸出。幸運(yùn)的是,有一套補(bǔ)救措施。 原文:Java 8 Nashorn Tutorial 譯者:飛龍 協(xié)議:CC BY-NC-SA 4.0 這個教程中,你會通過簡單易懂的代碼示例,來了解Nashorn Ja...
以下是Java技術(shù)棧微信公眾號發(fā)布的關(guān)于 Java 的技術(shù)干貨,從以下幾個方面匯總。 Java 基礎(chǔ)篇 Java 集合篇 Java 多線程篇 Java JVM篇 Java 進(jìn)階篇 Java 新特性篇 Java 工具篇 Java 書籍篇 Java基礎(chǔ)篇 8張圖帶你輕松溫習(xí) Java 知識 Java父類強(qiáng)制轉(zhuǎn)換子類原則 一張圖搞清楚 Java 異常機(jī)制 通用唯一標(biāo)識碼UUID的介紹及使用 字符串...
字符流 Java平臺使用Unicode約定存儲字符值,字符流I/O自動將此內(nèi)部格式與本地字符集進(jìn)行轉(zhuǎn)換,在Western語言環(huán)境中,本地字符集通常是ASCII的8位超集。 對于大多數(shù)應(yīng)用程序,具有字符流的I/O并不比具有字節(jié)流的I/O復(fù)雜,使用流類完成的輸入和輸出會自動轉(zhuǎn)換為本地字符集和從本地字符集轉(zhuǎn)換,使用字符流代替字節(jié)流的程序會自動適應(yīng)本地字符集并為國際化做了準(zhǔn)備 — 所有這些都無需程序員的額...
字符 大多數(shù)情況下,如果使用單個字符值,則將使用原始char類型,例如: char ch = a; // Unicode for uppercase Greek omega character char uniChar = u03A9; // an array of chars char[] charArray = { a, b, c, d, e }; 但是,有時候需要使用字符作為對象 — 例如...
閱讀 2707·2023-04-25 19:13
閱讀 4054·2021-09-22 15:34
閱讀 3065·2019-08-30 14:23
閱讀 1473·2019-08-29 17:17
閱讀 1616·2019-08-29 16:05
閱讀 1548·2019-08-29 13:26
閱讀 1226·2019-08-29 13:19
閱讀 564·2019-08-29 13:16