1、System.out.println(scharAt(i));這行出問題了,應(yīng)該是System.out.print(scharAt(i));// s2為空,獲取它的第N個字符當(dāng)然會出問題了。
創(chuàng)新互聯(lián)成立于2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站制作、網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元鳳陽做網(wǎng)站,已為上家服務(wù),為鳳陽各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
2、第一個問題:String沒有reverse方法,你可以 轉(zhuǎn)成StringBuffer后調(diào)用 第二個問題:s不會變成StringBuffer,因為s沒有參與轉(zhuǎn)換。
3、in the old character sequence.大致意思是說,當(dāng)你調(diào)用了一個StringBuffer對象的reverse方法以后, 它會將反轉(zhuǎn)過來的字符串取代當(dāng)前字符串。也就是說調(diào)用些方法會將原字符串給反轉(zhuǎn)過來。
4、翻轉(zhuǎn)string,為什么不直接調(diào)用StringBuffer.reverse()方法呢,那個是JAVA固有的反轉(zhuǎn)string方法啊。
String temp1=1//1,2...int temp2=Integer.parseInt(temp1);返回的結(jié)果就是數(shù)字。
先用spilt(,)分割數(shù)字,遍歷結(jié)果,用split(-)分割子集。
因為大寫A-Z對應(yīng)的ASCII碼是6667 依次類推。
1、翻轉(zhuǎn)string,為什么不直接調(diào)用StringBuffer.reverse()方法呢,那個是JAVA固有的反轉(zhuǎn)string方法啊。
2、print(scharAt(i));// s2為空,獲取它的第N個字符當(dāng)然會出問題了。
3、一樓已經(jīng)寫出了核心代碼;二樓功能實現(xiàn)了,但用的是類庫已經(jīng)寫好的方法。
4、a string.ptr=reversalchar(str);printf(%s\n,ptr);return 0;} 這里面輸入的是this is a string ,你把這里改成你要輸入的就可以了。
5、首先給你介紹一個類和一個方法,如下:StringBulider類就像一個可變長度的字符串?dāng)?shù)組一樣,內(nèi)容和長度都可以被改變,既方便又節(jié)省開銷。reverse()翻轉(zhuǎn)StringBulider對象中的字符串。
使用遞減的for循環(huán),然后用charAt倒序獲取字符串。代碼如下 String str=qwertyuiopfor (int i = str.length()-1; i = 0; i--) { // 字符串下標(biāo)從0開始,長度-1結(jié)束。倒序所以從長度-1開始,0結(jié)束。
要文本逆序,就要先全部讀取到,然后逆序,再寫入即可。
String[] str = {To be or not to be};你這個不是數(shù)組只有一條數(shù)據(jù)的 我想你是定義錯了 應(yīng)該是用逗號分開 String[] str = {To,be,or,not,to,be};哦或者是樓上 那樣。
你的Java程序錯在用變量a去計算位數(shù),導(dǎo)致a為0,所以后面的結(jié)果都為0,應(yīng)該把a賦給一個臨時變量t,用t去計算位數(shù)。還有你的逆序算法有問題,不但復(fù)雜,而且結(jié)果不是逆序。
視頻講解的是Java編程語言中關(guān)于數(shù)組逆序的第一種方式,采用的方法是使用普通的for循環(huán)和交換變量完成的。
這程序整體意思就是開始不斷從控制臺一個個地接收字符,最后放在Stringbuffer里面,后面再順序地把Stringbuffer的字符壓棧,最后出棧輸出,棧這個數(shù)據(jù)結(jié)構(gòu)本來就是先進后出的,所以最后輸出的內(nèi)容恰好是你輸入的字符串的逆序。