精华内容
下载资源
问答
  • String ss="qsdcv"; String ss1="qsdcv";...这种声明方式就是同一种引用? 为什么会有这样的结果 System.out.println(ss.equals(ss1));//true System.out.println(st.equals(st1));//true
  • 声明string变量的几种方式区别

    千次阅读 2018-05-31 16:05:35
    string s = null;只定义了一个string型的变量s而不为其分配内存,使用它之前必须为它赋值如 s="xxx"; 不然程序运行时可能会引发空指针异常string s = String.Empty; 与 string s = "";String....
    string s = null;
    
    只定义了一个string型的变量s而不为其分配内存,使用它之前必须为它赋值如 s="xxx"; 不然程序运行时可能会引发空指针异常
    string s = String.Empty; 与 string s = "";

    String.Empty表示空字符串。String.Empty的定义为public static readonly string Empty,编译时会转化成””,但是String.Empty是一个常数,””是一个字符串对象,对字符串对象进行运算总是很慢的。所以声明空字符串时使用string s = String.Empty; 更佳,不要用""

    展开全文
  • String声明

    千次阅读 2017-08-07 21:22:26
    String在java中是一个类,这个类里面有很多方法》》》》》》》》》》》》先来介绍一下String声明创建。。。

    这里介绍一下String,其实这是在java.lang中的一个类,


    String类位于java.lang包中,具有丰富的方法。
    计算字符串的长度,比较字符串,连接字符串,提取字符串


    字符串三种声明方式的区别:

    一般的创建对象:在堆内存中创建对象,在栈内存中形成引用

    然而,直接用引号来创建字符串时,在字符串常量池直接创建
    String s="hello";//通过双引号直接创建时在字符串常量池中直接创建的
    String s2=s;
    String s3="hello";//字符串常量池中的地址
    System.out.println(s==s2);
    System.out.println(s==s3);
    结果:【true true】
    还有一种穿件字符串对象的方式——通过new关键字
    String s4=new String("hello");//通过new关键字的方式创建,跟普通的创建方式一样,不能用==直接比较,应该使用equals的方式去比较
    System.out.println(s==s4);
    String s5="he";
    String s6="llo";
    String s7=s5+s6;
    System.out.println(s==s7);//这里是不相等的, 这里没有给出具体的值,而是给出了引用,是不相等的
    String s8="he"+"llo"; //这里是不相等的 如果是直接给出直接的值 就是想等的
    System.out.println(s==s8);
    结果为: 【false false true】

    length()


    String 了提供了一个length()方法,确定字符串的长度,这是一个方法,而数组的length长度是一个属性,区别方法和属性只要看后面有没有括号。
    用法和length的用法一样。


    字符串的值————equals()

    == 比较的是字符串的地址,比较出来的结果有可能会不一样
    这里比较字符串额方法equals
    String a="a";
    String b=null;
    System.out.println(a.equals(b));
    System.out.println(b.equals(a));
    【这里的结果是 false 和报错】

    空对象使用了属性或者方法,空对象使用了.语法 ,空对象使用语法倒置异常,所以把确定有值放在前面,不确定的就放在后面,这样就不会报错了

    equals 判别分方式,是将两个字符串中的字符一个一个比较。


    展开全文
  • String对象的声明String对象的常用方法: package string.test; import java.util.Scanner; /* * 定义一个String对象 * 了解String 方法 */ public class StringStudy { public static void main(String[] ...

    String对象的声明和String对象的常用方法:

    package string.test;
    import java.util.Scanner;
    /*
     * 定义一个String对象
     * 了解String 方法
     */
    public class StringStudy {
    	public static void main(String[] args){
    		String str = "asjfksdjk4lgdgkljslfgklgj";
    		
    		/*length()方法,返回字符串的长度
    		 *int length = str.length();
    		 */
    		System.out.println("str字符串为:" + str);
    		System.out.println("字符串str的长度是:" + str.length());//length()方法
    		
    		
    		/*
    		 * charAt(int index)方法,返回索引处的char值
    		 * 从0开始
    		 */
    		System.out.println("str字符串为:" + str);
    		Scanner in = new Scanner(System.in);//charAt(int index)方法
    		System.out.print("请输入要检索的位置:");
    		int k = in.nextInt();
    		System.out.println("检索到的字符为:" + str.charAt(k));
    		
    		
    		/*
    		 * concat(String s)方法,将指定字符串连接到此字符串尾部
    		 * 在本例中将字符串str1连接到字符串str的尾部
    		 */
    		String str1 = "abcd123";
    		System.out.println("字符串str为:" + str);
    		System.out.println("字符串str1为:" + str1);
    		System.out.println("str余str1连接后的字符串为" + str.concat(str1));//concat(string s) 方法
    		
    		
    		/*
    		 * contains(charSequence s)方法,用来判断此字符串是否包含指定字符串
    		 * 其返回值为boolean类型(true/false)
    		 */
    		String str2 = "asjf";  
    		System.out.println("contains方法的返回值为:"+str.contains(str2));
    		
    		
    		/*
    		 * equals(Object anObject)方法,用来将此字符串与指定的字符串比较
    		 * 其返回值为boolean类型(true/false)
    		 */
    		String str3 = "asdgesfd";
    		System.out.println("equals方法的返回值为:" + str.equals(str3));
    		
    		
    		/*
    		 * compareTo(String anotherString)方法,用来按字典顺序比较两个字符串
    		 * 其返回值为:
    		 * 如果这个字符串是等参数字符串那么返回值0,
    		 * 如果这个字符串是按字典顺序小于字符串参数那么返回小于0的值,
    		 * 如果此字符串是按字典顺序大于字符串参数那么一个大于0的值
    		 */
    		String str4 = "asfdghhj";
    		System.out.println("compareTo方法的返回值为:" + str.compareTo(str4));
    		
    		
    		/*
    		 * indexOf(int ch)返回指定字符在此字符串中的第一次出现处的索引
    		 * 
    		 */
    		int t='4';
    		System.out.println("indexOf方法的返回值:" + str.indexOf(t));
    		
    		
    		/*
    		 * substring(int beginIndex)用来截取字符串,其截取的是从beginIndex到结尾的
    		 * substring(int beginIndex,int endIndex)用来截取字符串,其截取的是从beginIndex到endIndex的
    		 */
    		String str5= "fghj536jfghj" ;
    		System.out.println("字符串str5为:" + str5);
    		System.out.println("从字符串str5的第四位截取的得到的字符串为:" + str5.substring(4));
    		System.out.println("截取字符串的第6到第9位得到的字符串为:" + str5.substring(6,9));
    		
    		/*
    		 * toLower/upperCase()将指定字符串转化为小/大写字符串
    		 */
    		String str6= "ashdjw45" ;
    		System.out.println("将字符串str6中的字母全部改为大写:" + str6.toUpperCase());
    		
    		
    		/*
    		 * split(String regex)--根据匹配给定的字符串来拆分此字符串
    		 */
    	}
    
    }
    


    展开全文
  • String用法详解

    万次阅读 多人点赞 2018-04-05 16:15:51
    string类声明string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心...

    string类

    声明

    string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。 
    之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下的需要。我们尽可以把它看成是C++的基本数据类型。 
    首先,为了在我们的程序中使用string类型,我们必须包含头文件。如下:

    #include  <string>  // 注意这里不是string.h,string.h是C字符串头文件

    1、声明一个C++字符串

    声明一个字符串变量很简单: string str; 
    这样我们就声明了一个字符串变量,但既然是一个类,就有构造函数和析构函数。上面的声明没有传入参数,所以就直接使用了string的默认的构造函数,这个函数所作的就是把str初始化为一个空字符串。string类的构造函数和析构函数如下:

    1)  string s;  // 生成一个空字符串s 
    2)  string s(str) ; // 拷贝构造函数生成str的复制品 
    3)  string s(str, stridx);  // 将字符串str内"始于位置stridx"的部分当作字符串的初值 
    4)  string s(str, stridx, strlen) ; // 将字符串str内"始于stridx且长度顶多strlen"的部分作为字符串的初值 
    5)  string s(cstr) ;  // 将C字符串(以NULL结束)作为s的初值 
    6)  string s(chars, chars_len) ;  // 将C字符串前chars_len个字符作为字符串s的初值。 
    7)  string s(num, ‘c’) ;  // 生成一个字符串,包含num个c字符 
    8)  string s(“value”);  string s=“value”;  // 将s初始化为一个字符串字面值副本
    9)  string s(begin, end);  // 以区间begin/end(不包含end)内的字符作为字符串s的初值 
    10) s.~string();  //销毁所有字符,释放内存 

    2、string与C字符数组的比较

    string串要取得其中某一个字符,和传统的C字符串一样,可以用s[i]的方式取得。比较不一样的是如果s有三个字符,传统C的字符串的s[3]是’\0’字符,但是C++的string则是只到s[2]这个字符而已。

    1、C风格字符串

    • 用”“括起来的字符串常量,C++中的字符串常量由编译器在末尾添加一个空字符;
    • 末尾添加了‘\0’的字符数组,C风格字符串的末尾必须有一个’\0’。

    2、C字符数组及其与string串的区别

    • char ch[ ]={‘C’, ‘+’, ‘+’}; //末尾无NULL
    • char ch[ ]={‘C’, ‘+’, ‘+’, ‘\0’}; //末尾显式添加NULL
    • char ch[ ]=”C++”; //末尾自动添加NULL字符 若[ ]内数字大于实际字符数,将实际字符存入数组,其余位置全部为’\0’。 
      这里写图片描述

    3、string对象的操作

    string s;
    1)  s.empty();  // s为空串 返回true
    2)  s.size();  // 返回s中字符个数 类型应为:string::size_type
    3)  s[n];  //0开始相当于下标访问
    4)  s1+s2;  // 把s1和s2连接成新串 返回新串 
    5)  s1=s2;  // 把s1替换为s2的副本
    6)  v1==v2;  // 比较,相等返回true
    7)  `!=, <, <=, >, >=`  惯有操作 任何一个大写字母都小于任意的小写字母

    当进行string对象和字符串字面值混合连接操作时,+操作符的左右操作数必须至少有一个是string类型的:

    string s1(“hello”);
    string s3=s1+”world”;  //合法操作
    string s4=”hello”+”world”;  //非法操作:两个字符串字面值相加

    4、字符串操作函数

    1、string类函数

    1) =, s.assign() // 赋以新值 
    2) swap() // 交换两个字符串的内容 
    3) +=, s.append(), s.push_back() // 在尾部添加字符 
    4) s.insert() // 插入字符 
    5) s.erase() // 删除字符 
    6) s.clear() // 删除全部字符 
    7) s.replace() // 替换字符 
    8) + // 串联字符串 
    9) ==,!=,<,<=,>,>=,compare() // 比较字符串 
    10) size(),length() // 返回字符数量 
    11) max_size() // 返回字符的可能最大个数 
    12) s.empty() // 判断字符串是否为空 
    13) s.capacity() // 返回重新分配之前的字符容量 
    14) reserve() // 保留一定量内存以容纳一定数量的字符 
    15) [ ], at() // 存取单一字符 
    16) >>,getline() // 从stream读取某值 
    17) << // 将谋值写入stream 
    18) copy() // 将某值赋值为一个C_string 
    19) c_str() // 返回一个指向正规C字符串(C_string)的指针 内容与本string串相同 有’\0’ 
    20) data() // 将内容以字符数组形式返回 无’\0’ 
    21) s.substr() // 返回某个子字符串 
    22) begin() end() // 提供类似STL的迭代器支持 
    23) rbegin() rend() // 逆向迭代器 
    24) get_allocator() // 返回配置器

    2、函数说明

    1、s.assign();

    s.assign(str); // 不说 
    s.assign(str,1,3); // 如果str是"iamangel" 就是把"ama"赋给字符串 
    s.assign(str,2,string::npos); // 把字符串str从索引值2开始到结尾赋给s 
    s.assign("gaint"); // 不说 
    s.assign("nico",5); // 把’n’ ‘I’ ‘c’ ‘o’ ‘\0’赋给字符串 
    s.assign(5,'x'); // 把五个x赋给字符串

    2、大小和容量函数

    一个C++字符串存在三种大小: 
    1) 现有的字符数,函数是s.size()和s.length(),他们等效。s.empty()用来检查字符串是否为空。 
    2) max_size(); 这个大小是指当前C++字符串最多能包含的字符数,很可能和机器本身的限制或者字符串所在位置连续内存的大小有关系。 
    3) capacity()重新分配内存之前string所能包含的最大字符数。 
    这里另一个需要指出的是reserve()函数,这个函数为string重新分配内存。重新分配的大小由其参数决定,默认参数为0,这时候会对string进行非强制性缩减。

    3、元素存取

    我们可以使用下标操作符[]和函数at()对元素包含的字符进行访问。但是应该注意的是操作符[]并不检查索引是否有效(有效索引0~str.length()),如果索引失效,会引起未定义的行为。而at()会检查,如果使用at()的时候索引无效,会抛出out_of_range异常。 
    有一个例外不得不说,const string a;的操作符[]对索引值是a.length()仍然有效,其返回值是’\0’。其他的各种情况,a.length()索引都是无效的。

    4、比较函数

    C ++字符串支持常见的比较操作符(>,>=,<,<=,==,!=),甚至支持string与C-string的比较(如 str<”hello”)。在使用>,>=,<,<=这些操作符的时候是根据”当前字符特性”将字符按字典顺序进行逐一的比较。字典排序靠前的字符小,比较的顺序是从前向后比较,遇到不相等的字符就按这个位置上的两个字符的比较结果确定两个字符串的大小。 
    另一个功能强大的比较函数是成员函数compare()。他支持多参数处理,支持用索引值和长度定位子串来进行比较。他返回一个整数来表示比较结果,返回值意义如下:0-相等 、>0-大于、<0-小于。

    5、插入字符

    也许你需要在string中间的某个位置插入字符串,这时候你可以用insert()函数,这个函数需要你指定一个安插位置的索引,被插入的字符串将放在这个索引的后面。 
    s.insert(0,”my name”); 
    s.insert(1,str); 
    这种形式的insert()函数不支持传入单个字符,这时的单个字符必须写成字符串形式。为了插入单个字符,insert()函数提供了两个对插入单个字符操作的重载函数: 
    insert(size_type index, size_type num, chart c)和insert(iterator pos, size_type num, chart c)。 
    其中size_type是无符号整数,iterator是char*,所以,你这么调用insert函数是不行的: 
    insert(0, 1, ‘j’);这时候第一个参数将转换成哪一个呢? 
    所以你必须这么写:insert((string::size_type)0, 1, ‘j’)! 
    第二种形式指出了使用迭代器安插字符的形式。

    6、提取子串s.substr()

    s.substr(); // 返回s的全部内容 
    s.substr(11); // 从索引11往后的子串 
    s.substr(5,6); // 从索引5开始6个字符

    5、字符串流stringstream操作

    Iostream标准库支持内存中的输入输出,只要将流与存储在程序内存中的string对象捆绑起来即可。此时,可使用iostream输入和输出操作符读写这个stream对象。使用stringstream,我们必须包含头文件#include。

    1、string s

    1)  >>操作符 // 用于从istream对象中读入输入
    2)  is >> s;  // 从输入流is中读取一个以空白字符分割的字符串,写入s
    3)  <<操作符 // 用于把输出写到ostream对象中
    4)  os << s; // 将s写到输出流os中
    5)  getline(is, s);  // 从输入流is中读取一行字符,写入s,直到遇到分行符或到了文件尾
    6)  istream // 输入流 提供输入操作
    7)  ostream // 输出流 提供输出操作

    2、stringstream特定的操作

    1)  stringstream strm; // 创建自由的stringstream对象
    2)  stringstream strm(s); // 创建存储s的副本的stringstream对象,s是stringstream类型
    3)  strm.str(); // 返回strm中存储的string类型对象
    4)  strm.str(s); // 将string类型的s复制给strm 返回void

    3、string到int的转换

    stringstream通常是用来做数据转换的,如果你打算在多次转换中使用同一个stringstream对象,记住在每次转换前要使用clear()方法。在多次转换中重复使用同一个stringstream(而不是每次都创建一个新的对象)对象最大的好处在于效率。stringstream对象的构造和析构函数通常是非常耗费CPU时间的。 
    string到int的转换(与其他类型间的转换一样大同小异):

    string result=”10000”;  
    int n=0;
    stream<<result;
    stream>>n;  // n等于10000

    6、C字符串、string串、stringstream之间的关系

    首先必须了解,string可以被看成是以字符为元素的一种容器。字符构成序列(字符串)。有时候在字符序列中进行遍历,标准的string类提供了STL容器接口。具有一些成员函数比如begin()、end(),迭代器可以根据他们进行定位。注意,与char*不同的是,string不一定以NULL(‘\0’)结束。string长度可以根据length()得到,string可以根据下标访问。所以,不能将string直接赋值给char*。

    1、string转换成const char *

    如果要将字面值string直接转换成const char *类型。string有2个函数可以运用:一个是.c_str(),一个是data成员函数。 
    c_str()函数返回一个指向正规C字符串的指针,内容与本string串相同。这是为了与C语言兼容,在C语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成C中的字符串样式。注意:一定要使用strcpy()函数等来操作方法c_str()返回的指针

    string str = "Hello World";
    const char *ch1 = str.c_str();
    const char *ch2 = str.data();

    此时,ch1与ch2的内容将都是”Hello World”。但是只能转换成const char*,如果去掉const编译不能通过。

    2、string转换成char *

    C++提供的由C++字符串得到对应的C_string的方法是使用data()、c_str()和copy(),其中 
    1) data()以字符数组的形式返回字符串内容,但并不添加’\0’。 
    2) c_str()返回一个以’\0’结尾的字符数组,返回值是const char*。 
    3) copy()则把字符串的内容复制或写入既有的c_string或字符数组内。 
    C++字符串并不以’\0’结尾。我的建议是在程序中能使用C++字符串就使用,除非万不得已不选用c_string。 
    如果要转换成char*,可以用string的一个成员函数strcpy实现。

    string str = "Hello World";
    int len = str.length();
    char *data = new char[len+1];  //这里+1还是不+1需要注意
    strcpy(data, str.c_str());  // const char *data = new char[len+1];  strcpy(data, str);

    此时,data中的内容为”Hello World”使用c_str()要么str赋给一个const指针,要么用strcpy()复制。

    3、char *转换成string

    string类型能够自动将C风格的字符串转换成string对象:

    string str; 
    const char *pc = "Hello World"; 
    str = pc;
    printf(“%s\n”, str);  //此处出现错误的输出
    cout<<str<<endl;

    不过这个是会出现问题的。有一种情况我要说明一下。当我们定义了一个string类型之后,用printf(“%s”,str);输出是会出问题的。这是因为“%s”要求后面的对象的首地址。但是string不是这样的一个类型。所以肯定出错。 
    用cout输出是没有问题的,若一定要printf输出。那么可以这样:

    printf("%s",str.c_str());

    4、char[ ] 转换成string

    这个与char*的情况相同,也可以直接赋值,但是也会出现上面的问题,需要同样的处理。 
    - 字符数组转化成string类型:

    char ch [] = "ABCDEFG";
    string str(ch); //也可string str = ch;

    或者

    char ch [] = "ABCDEFG";
    string str;
    str = ch; //在原有基础上添加可以用str += ch;

    5、string转换成char[ ]

    string对象转换成C风格的字符串:

    const char *str = s.c_str();

    这是因为为了防止字符数组被程序直接处理c_str()返回了一个指向常量数组的指针。 
    由于我们知道string的长度可以根据length()函数得到,又可以根据下标直接访问,所以用一个循环就可以赋值了,这样的转换不可以直接赋值。

    string str = "Hello World";
    int len=str.length();
    char ch[255]={};
    for( int i=0;i<str.length();i++)
    ch[i] = str[i];
    ch[len+1] = '\0';
    printf("%s\n", ch);
    cout<<ch<<endl;

    6、stringstream与string间的绑定

    stringstream strm;
    string s;
    strm<<s;  // 将s写入到strm
    strm>>s;  // 从strm读取串写入s
    strm.str(); // 返回strm中存储的string类型对象
    strm.str(s); // 将string类型的s复制给strm 返回void
    char* cstr;  // 将C字符数组转换成流
    string str(cstr);
    stringstream ss(str);
    展开全文
  • 写c++代码时遇到了如下问题,声明string类的时候,提示“未定义标识符‘string’”,如图 添加了头文件#include &lt;string&gt;之后,仍然显示上述错误,网上搜索之后查到,还需要在头文件中添加using ...
  • String数组声明赋值

    千次阅读 2012-07-11 11:07:58
    [code="java"] String[] A = new String[]{}; ...这个String数组声明赋值哪里不正确?求指教 [/code] [code="java"] 数组的声明由几种方式: 1,String []a = new...
  • string Name;是字段声明还是变量声明,有什么区别?string Name;是字段声明还是变量声明,有什么区别?
  • C++的string声明实战

    千次阅读 2019-05-02 14:27:48
    string的构造函数说明 string s; //生成一个空字符串s string s(str) //拷贝构造函数 生成str的复制品 string s(str, stridx) //将字符串str内"始于位置stridx"的部分当作字符串的初值 string s(str, stridx, ...
  • String类型声明空值变量

    千次阅读 2011-10-24 11:10:00
    在C#当中,我们经常用到String str=null与String str=””还有String str=string.Empty这三种方法来声明一个 变量为空值,那么它们之间有什么区别吗?   null是C#关键字,是表示不引用任何对象的空引用的文字值。...
  • Java中String显式声明的对象创建问题

    千次阅读 2017-09-03 15:44:15
    Java中String显式声明的对象创建问题
  • String对象的声明和操作

    千次阅读 2018-07-07 20:31:54
    String类是用来构造一个字符串对象的.字符串对象操作在程序当中会频繁的使用到,我们可以通过实现这个类,就可以构造我们需要的字符串对象。通过String类构造字符串对象的方式主要有两种:(1)常用的创建方式 String...
  • C#中,字符串的声明,你使用String还是string?String? string? 只有一个大小写的问题,你习惯用哪个?知道具体的区别吗?我是习惯了用string,区别也是最近才找到了权威的根据,CLR via C#。其实,String是CLR的类型...
  • String型数组声明及其调用

    千次阅读 2007-09-02 00:58:00
    “~幸福的多宾”问的问题,字符型数组的声明和调用。写了个例子。如下:package demo;public class demo { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub...
  • String对象不可改变的特性

    千次阅读 2013-11-13 17:06:54
    翻译人员: 铁锚 翻译日期: 2013年11月13日 原文链接: Diagram to show Java String’s Immutability...1. 声明String对象 String s = "abcd"; 图1 2. 将一个字符串变量赋值给另一个String变量 String s2 = s;
  • stringstringstream用法

    万次阅读 多人点赞 2017-09-23 10:04:03
    stringstringstream用法总结
  • c++ 将一个char 转化为string

    万次阅读 多人点赞 2018-02-23 15:12:00
    const char c = 'a';...声明string 后将char push_back string s1; s1.push_back(c); //3.使用stringstream stringstream ss; ss &lt;&lt; c; string str2 = ss.str(); //注意 使用to_s...
  • 如果直接声明为ArrayList<String> list=new ArrayList<String>()这个也没有问题,但是不推荐,应为这样显得不是很灵活,因为List下除了ArrayList还有LinkList等他们都实现了List里面的方法。 而声明成: List...
  • C++ string类型变量

    千次阅读 2016-06-04 21:55:44
    声明string类型变量,不需要考虑字符串分配的空间大小,并且在字符串初始化上也有更多选择。 1.string a("the dog"); 2.string a; a="the dog"; 3.string a="the dog"; 可也可以把重新给string对象赋值而无须担心...
  • golang数据结构初探之字符串string

    千次阅读 2021-08-23 15:39:33
    声明string变量非常简单,常见的方式有以下两种: 声明一个空字符串后再赋值 var s string s = "hello world" 需要注意的是空字符只是长度为0,但不是nil。不存在值为nil的string 使用简短变量声明: s := "hello ...
  • MFC “string”: 未声明的标识符

    千次阅读 2017-07-23 16:08:39
    //使用string要包含下面两个 #include #include using namespace std;
  • Java中String类型的两种定义声明方式以及区别 String test="test"; String test= new String("test"); 区别 上述是Java中两种创建字符串的方法,如果大家有学过C++的基础,初学Java时可能觉得这两种方式没有...
  • String数组的创建

    万次阅读 2018-10-06 10:29:05
    string数组的定义有三种写法: String[] arr = new String[10]; //创建一个长度为10的String 类型数组。 String arr[] = new String[10]; String arr[] = {"张三","李四"};...因为java是强类型语言,声明...
  • Java基础之String中equals,声明方式,等大总结

    千次阅读 多人点赞 2015-10-30 18:32:32
     ②String a="abc"和String a=new String("abc")两种声明方式的区别   ③"abc".equals(abc)和a.equals("abc")的区别,从源码分析为什么"abc".euqals(str)可以避免空指针  ④String对象的值是不能修改的,...
  • Java String

    千次阅读 2018-01-31 19:39:05
    java把String声明的final类,不能有类。String类对象创建后不能修改,由0或多个字符组成,包含在一对双引号之间。 二、String类对象的创建 字符串声明String stringName; 字符串创建:stringName = new Stri
  • c++函数中string 类型形参的声明方式

    千次阅读 2018-12-12 11:44:15
    1.首先是正确的写法,没有使用命名空间就只能用std::string, 如上图,当你使用了std的命名空间后,形参的写法就和普通的类型写法一样了。 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示...
  • C语言中有string吗?

    千次阅读 2016-01-15 18:19:14
    一直以来对这个问题都不是很清楚:只是知道C语言里有这个头文件,所以就想当然的认为C语言里有string这个 类型,可以通过下面这种形式来声明string的变量 string aString; 后来编程时发现通不过编译,又查资料才...
  • 首先要理解句柄,通过简单的声明String s1或者 String s2, s1或者s2我们就为String对象创建了一个句柄。而句柄的保存数据地方是堆栈(栈)。在String s1="a"中的"a"是存储在栈里,和基本类型的内存空间分配一样。而...
  • C++函数中string类型的形参声明方…

    千次阅读 2013-06-01 09:45:49
    注意即使添加了#include 在写函数原型时写成这样也...string output( string str ) {  retrun str; } 使用方法如下: #include string output( std::string str ) {  return str; } 红色标记申明才能正确使用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,276,599
精华内容 510,639
关键字:

声明string