java中字符串和字符数组的区别? Java字符串数组的对比

java\u4e2d\u5b57\u7b26\u4e32\u548c\u5b57\u7b26\u6570\u7ec4\u7684\u533a\u522b

1\u3001\u5b57\u7b26\u4e32\u662f\u7c7b\uff0c\u5b57\u7b26\u6570\u7ec4\u662f\u6570\u7ec4\u3002\uff08\u6570\u7ec4\u548c\u7c7b\u7684\u533a\u522b\u5c31\u4e0d\u7528\u6211\u8bf4\u4e86\u5427\uff09
2\u3001\u5b57\u7b26\u6570\u7ec4\u662fchar\u7c7b\u578b\u7684\uff0c\u5b57\u7b26\u4e32\u662fString\u7c7b\u578b\u7684
3\u3001\u4e24\u8005\u4e4b\u95f4\u7684\u76f8\u4e92\u8f6c\u5316\uff1a
String s="this is a string";
char[ ] c={'t','h','i','s','i','s','a','c','h','a','r'};
\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3a\u5b57\u7b26\u6570\u7ec4
char[ ] ch=s.toCharArray();
\u5b57\u7b26\u6570\u7ec4\u8f6c\u5316\u4e3a\u5b57\u7b26\u4e32
String str=string.valueOf(c);

\u53ef\u4ee5\u5b9a\u4e492\u4e2a\u65b9\u6cd5\uff0c\u4e00\u4e2a\u662fpublic boolean Search\uff08String[] str1,String str2 \uff09{}//\u7528\u4e8e\u68c0\u6d4bstr1\u4e2d\u662f\u5426\u5305\u542bstr2\uff0c\u53e6\u4e00\u4e2a\u65b9\u6cd5\u662fpublic boolean Remove\uff08String[] str1,String str2 \uff09{}//\u7528\u4e8e\u5728str1[]\u4e2d\u5220\u9664str2\u5b57\u7b26\u4e32\uff0c\u4e4b\u65f6\u8fd9\u6837\u4f1a\u7834\u574f\u539f\u6709\u7684\u6570\u636e\u3002
\u4e5f\u53ef\u4ee5\u5355\u7eaf\u7684\u75282\u6b64\u5faa\u73af\u6765\u6bd4\u8f83\uff0c\u5e76\u5c06\u7ed3\u679c\u5199\u5165\u5230\u81ea\u5b9a\u4e49\u7684\u5b57\u7b26\u4e32\u6570\u7ec4\u91cc

字符串以\0结束那是字符串在计算机内的存储结构,你定义了字符串计算机默认会在字符串后加上\0做为字符串结束标记,但是你写程序时并没有显式的写出来。
判断是否为字符串:字符串都是用双引号包含的。例如char *string="beijing"。
定义字符串有两种方法:一、字符串指针 char *string="abcde";
二、一维字符数组。例如:char string[10];string="abcde";
用字符数组定义注意了,数组长度为n,但是字符个数只能为n-1,就是上面说的计算机默认加了\0占了一个,否则会溢出。
字符数组一维的和字符串一样,二维的就是char string[M][N];当然你还可以类似定义多维的。

字符串是一个比较笼统的概念,C、C++中本身并没有“字符串”这种数据类型。所谓的字符串,一般是指,很多字符组成的序列。通常他们会用数组来表示,为了标志字符串已经结束,最后用一个\0,来表示字符串结束了。

当然,你只要使用一整套自己的字符串处理函数,你可以把“字符串”这种数据类型写成任意形势,比如MFC写的CString,或者atl的string等等。你甚至可以自己去写一个,只要你愿意,你甚至可以不让字符串以\0结尾,只要你能用别的方法来确保你不会越界读写。

如果往深入了说,字符串的底层也是用数组实现的。
要说使用的区别,字符串方便一些,数组灵活一些

字符串的话,是不可以变它的内容的。
字符数组的话,你是可以改变数组中包含的内容的。

你问的不是很详细。我属于菜鸟级别的。姑且回答一下。
1、字符串是类,字符数组是数组。(数组和类的区别就不用我说了吧)
2、字符数组是char类型的,字符串是String类型的
3、两者之间的相互转化:
String s="this is a string";
char[ ] c={'t','h','i','s','i','s','a','c','h','a','r'};
字符串转换为字符数组
char[ ] ch=s.toCharArray();
字符数组转化为字符串
String str=string.valueOf(c);

  • java瀛楃涓插拰瀛楃鏁扮粍鐨鍖哄埆
    绛旓細1銆瀛楃涓鏄被锛瀛楃鏁扮粍鏄暟缁銆傦紙鏁扮粍鍜岀被鐨勫尯鍒氨涓嶇敤鎴戣浜嗗惂锛2銆佸瓧绗︽暟缁勬槸char绫诲瀷鐨勶紝瀛楃涓叉槸String绫诲瀷鐨 3銆佷袱鑰呬箣闂寸殑鐩镐簰杞寲锛歋tring s="this is a string";char[ ] c={'t','h','i','s','i','s','a','c','h','a','r'};瀛楃涓茶浆鎹负瀛楃鏁扮粍 char[ ] ch...
  • java涓瓧绗︿覆鍜屽瓧绗︽暟缁勭殑鍖哄埆?
    绛旓細鐢瀛楃鏁扮粍瀹氫箟娉ㄦ剰浜嗭紝鏁扮粍闀垮害涓簄锛屼絾鏄瓧绗︿釜鏁板彧鑳戒负n-1锛屽氨鏄笂闈㈣鐨勮绠楁満榛樿鍔犱簡\0鍗犱簡涓涓紝鍚﹀垯浼氭孩鍑恒傚瓧绗︽暟缁勪竴缁寸殑鍜屽瓧绗︿覆涓鏍凤紝浜岀淮鐨勫氨鏄痗har string[M][N];褰撶劧浣犺繕鍙互绫讳技瀹氫箟澶氱淮鐨勩
  • 鍦java涓璖tring鍜char鏁扮粍鐨鍖哄埆銆
    绛旓細String搴曞眰鏄敤浜哻har鏁扮粍鐨锛屼綘鐢╩yeclipse鐨勮皟璇曞姛鑳芥椂鑳界湅鍒帮紝char鏁扮粍閲岀殑鍏冪礌閮芥槸char锛宑har鏄熀鏈被鍨嬶紝String鏄紩鐢ㄧ被鍨嬶紝String鏄竴涓被锛屽疄渚嬪寲鍑烘潵鐨勬槸瀵硅薄锛岃宑har灏辨槸涓涓瀛楃锛屽拰int鍑烘潵鐨勬暟瀛椾竴鏍烽兘鏄熀鏈被鍨嬶紝char鏁扮粍鍙互杞寲鎴怱tring锛宯ew String(char[] ch)鎴朣tring.valueOf(char[] ...
  • Java涓瓧绗︿覆鐨闀垮害鍜屾暟缁勭殑闀垮害鐨勮幏寰楁柟寮忔湁浠涔堜笉鍚
    绛旓細瀛楃涓查暱搴︽槸瀛楃涓查噷瀛楃鐨涓暟锛String涓殑.length()灏卞彲浠ヨ幏寰椼鏁扮粍鏄竴绉嶉摼琛ㄧ粨鏋勶紝浠栫殑闀垮害鏄暟缁勪腑鍖呭惈澶氬皯涓暟缁勫厓绱狅紝鐢.size()鑾峰緱銆傚厓绱犲彲浠ユ槸鍚勭绫诲瀷锛屽寘鎷琒tring銆傚彲浠ユ煡鐪嬩竴涓婣PI锛歋tring锛歨ttp://docs.oracle.com/javase/6/docs/api/java/lang/String.html List锛歨ttp://docs.oracle...
  • Java 涓 char 鍜 String 鐨勫尯鍒
    绛旓細1. 绫诲瀷涓嶅悓锛宑har鏄瀛楃绫诲瀷锛 String鏄瀛楃涓绫诲瀷 2銆丼tring瀛楃涓叉槸鐢""鏉ュ寘鍚覆鐨勶紝 char鏄敤''鏉ュ寘鍚崟瀛楃鐨 3銆丼tring鍐呴儴鐢ㄦ潵瀛樺偍鐨勭粨鏋滄槸涓涓猚har瀛楃鏁扮粍銆
  • java涓璖tring[][] 鏄粈涔堜笢瑗?string[]鍙堟槸浠涔堜笢瑗?
    绛旓細String[]浠h〃涓缁鏁扮粍銆備緥濡傦細String[] str=new String[4]锛岃繖涓垱寤轰竴涓湁4涓厓绱犵殑鏁扮粍銆係tring[]浠h〃鏍煎紡涓篠tring鏁扮粍;濡俿tr[1] str[2]绛夈係tring[][]浠h〃澶氱淮鏁扮粍浜.[][],鍙互鐞嗚В涓哄嚑琛屽嚑鍒椼係tring鏄紪绋嬭瑷涓鐨勫瓧绗︿覆锛孲tring绫绘槸涓嶅彲鍙樼殑锛屽String绫荤殑浠讳綍鏀瑰彉锛岄兘鏄繑鍥炰竴涓柊鐨...
  • java鍦ㄨ绠楁満璇█涓湁浠涔堝急鐐广傚彲浠ョ殑璇濆府蹇欒皥璋堝瓧绗︿覆鏁扮粍鐨勫瓧绗︿覆...
    绛旓細StringBuilder()瀹冩槸涓涓被棰濓紝new 涓涓柊鐨凷tringBuilder() 缁欎簡瀹冧竴鍧楀唴瀛樼劧鍚庝綘鍙互瀵硅繖涓瀛楃涓杩涜璁稿鎿嶄綔鑰屼笉闇瑕佸湪鍒掑紑涓涓柊鍐呭瓨瀵瑰畠杩涜淇敼鎴栬呮搷浣 瀹冨氨鏄В鍐充簡涓涓JAVA璇█涓嶈兘鍍廲閭f牱鍙互鐩存帴瀵瑰瓧绗︿覆杩涜淇敼鐨勭己闄烽 鏈変簡StringBuilder锛堬級 寰堝ソ鐨勮В鍐充簡JAVA璇█鐨勮繖涓紛鐥 铏界劧鍦...
  • stringbuffer涓巗tringbuilder鐨鍖哄埆
    绛旓細鍏舵,铏界劧StringBuffer鍜孲tringBuilder閮芥彁渚涗簡append()鏂规硶鏉ヨ繛鎺瀛楃涓,浣哠tringBuffer鐨刟ppend()鏂规硶鍦ㄦ瘡娆¤皟鐢ㄦ椂閮戒細鍒涘缓涓涓柊鐨勫瓧绗︽暟缁,鑰孲tringBuilder鐨刟ppend()鏂规硶鍒欎笉浼氥傝繖鎰忓懗鐫濡傛灉浣犲湪寰幆涓娆¤皟鐢╝ppend()鏂规硶,浣跨敤StringBuffer鍙兘浼氭瘮浣跨敤StringBuilder鏇村姞浣庢晥,鍥犱负瀹冧細浜х敓鏇村鐨勫唴瀛樺垎閰嶅拰鍨冨溇鍥炴敹寮閿銆
  • JAVA涓瓧绗︿覆鍜屾暟缁浣滀负鍑芥暟鍙傛暟 鍒嗗埆鏄浣曚紶閫掔殑
    绛旓細瀛楃涓浣滀负鍊兼潵浼犻掞紝鏁扮粍浣滀负瀵硅薄浼犻 鍊间紶閫掓槸涓嶆敼鍙樺師鏉ュ睘鎬х殑鍊肩殑銆傛墍浠ョ粨鏋滄槸锛歡oodbbb String 纭畾鏄间紶閫掞紝銆傛ゼ涓嬬殑楂樼骇缁忕悊鎬庝箞鏉ョ殑锛燂紵锛
  • java涓濡備綍灏瀛楃鏁扮粍杞崲鎴瀛楃涓,浠ラ楀彿鍒嗗壊
    绛旓細substring鏂规硶銆傚ぇ鑷存濊矾濡備笅锛歴tr4涓虹洰鏍囧瓧绗︿覆锛屽強鏈鍚庣殑缁撴灉浼氳瀛樻斁杩泂tr4 鎴戜滑鐢stringbuffer绫讳腑鐨勫嚱鏁癮ppend鏉ュ鐞瀛楃涓叉暟缁str1锛屽苟閫氳繃閫楀彿鏉ュ垎鍓诧紝鏈鍚庣敤tostring鍑芥暟锛屽皢鍏惰浆鍙樻垚瀛楃涓茬殑褰㈠紡銆傛渶鍚庣敤substring鏉ュ缁撴灉杩涜鎴彇锛屽緱鍒版渶鍚庨渶瑕佺殑褰㈠紡锛歛bc锛123,45 涓嬪浘涓哄叿浣撶殑浠g爜娈碉細...
  • 扩展阅读:java中字符串的输入 ... java中字符串的方法 ... java中字符串的替换 ... java中字符串的比较 ... java将数组转为字符串 ... java ... java中字符型优先级 ... java中字符串类型 ... java matches ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网