字符串怎么比較大小?
字符串怎么比較大小?
java中兩個(gè)字符串如何比較大小 有三種方法實(shí)現(xiàn) **種直接用字符串類的pareTo方法: String t1=\”20131011\”; String t2=\”20131030\”; int result = t1pareTo(t2);第二種是把這個(gè)日期字符串轉(zhuǎn)換成long: SimpleDateFormat sdf = new SimpleDateFormat(\”yyyyMMdd\”); Date d1 = sdf.parse(t1); Date d2 = sdf.parse(t2); long result = d1.getTime()-d2.getTime();第三種是把日期字符串轉(zhuǎn)換成整形int:int int1 = Integer.parseInt(t1); int int2 = Integer.parseInt(t2); int result = int1-int2;注:result大于0,則t1>t2; result等于0,則t1=t2; result小于0,則t1 字符串大小比較的規(guī)則? 比較的時(shí)候,從字符串左邊開始,一次比較每個(gè)字符,直接出現(xiàn)差異、或者其中一個(gè)串結(jié)束為止。 比如ABC與ACDE比較,**個(gè)字符相同,繼續(xù)比較第二個(gè)字符,由于第二個(gè)字符是后面一個(gè)串大,所以不再繼續(xù)比較,結(jié)果就是后面?zhèn)€串大。
再如ABC與ABC123比較,比較三個(gè)字符后**個(gè)串結(jié)束,所以就是后面一個(gè)串大。
所以,長度不能直接決定大小,字符串的大小是由左邊開始最前面的字符決定的。 java怎么比較字符串大小? 比較兩個(gè)字符串的的大小 str1和str2分別是兩個(gè)字符串str1==str2或者是 str1.equals(str2)如果要是兩個(gè)字符串忽略大小寫的話用 str1.equalsIgnoreCase(str2)也可以是 str1pareTo(str2) 第二個(gè)用加號(hào)連接起來就可以了 C語言中字符串的大小指的是什么 以字符是ASCII值確定,憨較規(guī)則是,從**個(gè)字符開始,順次向后直到出現(xiàn)不同的字符為止,然后以**個(gè)不同的字符的ASCII值確定,例如上面的”abc”和\”aabdfg\”,由于**個(gè)字符相同,都是\’a\’所以看下一個(gè)字符,第二個(gè)字符,一個(gè)是\’b\’,一個(gè)是‘a(chǎn)\’,由于b的ASCII值比a的ASCII值大,所以,這二個(gè)字符串的比較結(jié)果是\”abc\”>\”aabdfg\” c語言中比較字符串的strcmp函數(shù)是怎么比較大小的? strcmp(s1,s2) 對(duì)兩個(gè)字符串進(jìn)行比較,逐一比較字符的ascii碼,a為97,A為65 所以a>A;分出大小后面不再比較; 如果s1>s2,返回1; 如果s1=s2,返回0; 如果s1 在C語言中字符串的大小怎么比較啊? strcmp 原型:extern int strcmp(char *s1,char * s2); 用法:#include 功能:比較字符串s1和s2。 說明: 當(dāng)s1 當(dāng)s1=s2時(shí),返回值=0 當(dāng)s1>s2時(shí),返回值>0 即:兩個(gè)字符串自左向右逐個(gè)字符相比(按ASCII值大小相比較),直到出現(xiàn)不同的字符或遇 \’\\0\’為止。如: \”abcdefg\”和\”12\”,首先比較\’a\’和\’1\’,\’a\’的ASC碼是97,\’1\’的ASC碼是49,所以\”abcdefg\”> \”12\”,返回值是97-49=48 \”abc\”和\”ABC\”,首先比較\’a\’和\’A\’,\’a\’的ASC碼是97,\’A\’的ASC碼是65,所以\”abc\”> \”ABC\”,返回值是97-65=32 \”1000\”和\”2\”,首先比較\’1\’和\’2\’,\’1\’的ASC碼是49,\’2\’的ASC碼是50,所以\”1000\”< \”2\”,返回值是49-50=-1 字符串大小比較 如果單純比較長度,直接調(diào)用類似于strlen()之類的函數(shù)就可以,加以比較即可. 如果比較字符串的大小,則比較的是字符的ASCII編碼的大小.你搜索一下ASCII碼表就可以得知每一個(gè)ASCII字符的大小. 參考wpyz/noip/11-1.asp 在比較時(shí),設(shè)置一個(gè)計(jì)數(shù)器,從零開始,一直循環(huán)到最短的那個(gè)字符結(jié)束,一位一位進(jìn)行比較, 1.如果 字符串1的第n位的ASCII碼值 等于 字符串2的第n位的ASCII碼值 則 繼續(xù)比較下一位 2.如果 字符串1的第n位的ASCII碼值 大于 字符串2的第n位的ASCII碼值 則 輸出結(jié)果:1,表示字符串1 > 字符串2; 3.如果 字符串1的第n位的ASCII碼值 小于 字符串2的第n位的ASCII碼值 則 輸出結(jié)果:-1 表示字符串1 < 字符串2; 4.如果 每一位的ASCII碼值都相等,而且長度相同, 則 輸出結(jié)果:0 表示字符串1 == 字符串2; 5.如果 字符串1是字符串2的前m位,例如 abcd 與abcdef 比較, 則 字符串1 原因是,到第5位時(shí),字符串1的ASCII值是0,而字符串2的ASCII值為\’e\’,即十進(jìn)制的101,當(dāng)然是字符串2大了. 具體到 cds和lesoqd 從**位開始,\’c\’和\’l\’比較,當(dāng)然是\’c\’ < \’l\’了,所以,\”cds\” < \”lesoqd\” 常用的幾位ascii的順序從小到大為: 0..9, A..Z, a..z. 誰編個(gè)比較2個(gè)字符串大小的程序 我這個(gè)簡單 #include bi(char a[],char b[]) { int x,y; x=0; y=0; while(a[x]==b[x]&&a[x]!=\’\\0\’) x++; if(a[x]==\’\\0\’&&b[x==\’\\0\’]) y=0; else y=a[x]-b[x]; if(y==0) printf(\”\\ns1=s2\\n\”); else if(y>0) printf(\”\\ns1>s2\\n\”); else printf(\”\\ns1 } void main() { char s1[100],s2[100]; gets(s1); gets(s2); bi(s1,s2); } C++字符串比較大小 字符串的比較是逐個(gè)相應(yīng)字符進(jìn)行比較(比較他們的ASCII碼),直到有兩個(gè)字符不相等為止,ASCII碼大的字母所在字符串就大,與字符串長度無關(guān)。
如何比較字符串大小
如果單純比較長度,直接調(diào)用類似于strlen()之類的函數(shù)就可以,加以比較即可. 如果比較字符串的大小,則比較的是字符的ASCII編碼的大小.你搜索一下ASCII碼表就可以得知每一個(gè)ASCII字符的大小. 參考http://www.wpyz.net/noip/11-1.asp 在比較時(shí),設(shè)置一個(gè)計(jì)數(shù)器,從零開始,一直循環(huán)到最短的那個(gè)字符結(jié)束,一位一位進(jìn)行比較, 1.如果 字符串1的第n位的ASCII碼值 等于 字符串2的第n位的ASCII碼值 則 繼續(xù)比較下一位 2.如果 字符串1的第n位的ASCII碼值 大于 字符串2的第n位的ASCII碼值 則 輸出結(jié)果:1,表示字符串1 > 字符串2; 3.如果 字符串1的第n位的ASCII碼值 小于 字符串2的第n位的ASCII碼值 則 輸出結(jié)果:-1 表示字符串1 < 字符串2; 4.如果 每一位的ASCII碼值都相等,而且長度相同, 則 輸出結(jié)果:0 表示字符串1 == 字符串2; 5.如果 字符串1是字符串2的前m位,例如 abcd 與abcdef 比較, 則 字符串1<字符串2. 原因是,到第5位時(shí),字符串1的ASCII值是0,而字符串2的ASCII值為\’e\’,即十進(jìn)制的101,當(dāng)然是字符串2大了. 具體到 cds和lesoqd 從**位開始,\’c\’和\’l\’比較,當(dāng)然是\’c\’ < \’l\’了,所以,\”cds\” < \”lesoqd\” 常用的幾位ascii的順序從小到大為: 0..9, A..Z, a..z百科.
字符串和數(shù)值怎么比大小
把數(shù)值看成一個(gè)字符串,再與其他字符串比較大小。如果有必要(比如編程),則需要先把數(shù)值轉(zhuǎn)化為字符串。
接下來就簡單了,對(duì)于兩個(gè)字符串,從左往右逐個(gè)比較字符的ASC碼的大小,如果相同,就比較下一個(gè)字符,直到出現(xiàn)不同的字符為止,出現(xiàn)ASC碼大的字符串為大字符串,反之為小字符串;或者一個(gè)字符串的字符已經(jīng)全部比較完,而另一個(gè)還有字符,則先比較完的字符串是小字符串。
這個(gè)過程一般編程語言都有這個(gè)功能,可自動(dòng)完成。還有什么問題請(qǐng)留言。
字符串怎樣比較大小啊
這個(gè)字符串長度為10個(gè)字符。
可以用strlen(\”ab\’1\’\\\\\\12803\”)來求這個(gè)字符串的長度。
也可以用sizeof(\”ab\’1\’\\\\\\12803\”)來求,但是這個(gè)求出的結(jié)果是多了一個(gè)字符串結(jié)束符\\0。
可以試著輸出這個(gè)字符串看看是不是10個(gè)字符。
strlen()函數(shù)判斷的字符串長度是以\\0為結(jié)尾作為標(biāo)志的。
當(dāng)char * m=new char[TOKEN_LENGTH]后,雖然為指針分配了地址,但是其指向的內(nèi)容未被初始化,所以m指向的內(nèi)容是未知的,可能在第24個(gè)字符的位置發(fā)現(xiàn)了\\0所以strlen()顯示長度為24。
數(shù)據(jù)類型
字符串?dāng)?shù)據(jù)類型是建模在形式字符串的想法上的數(shù)據(jù)類型。
字符串是幾乎在所有編程語言中可以實(shí)現(xiàn)的非常重要和有用的數(shù)據(jù)類型。在某些語言中它們可作為基本類型獲得,在另一些語言中做為復(fù)合類型獲得。多數(shù)高級(jí)語言的語法允許通常用某種方式引用起來的字符串來表示字符串?dāng)?shù)據(jù)類型的實(shí)例;這種元字符串叫做“文本”或“字符串文本”。