精华内容
下载资源
问答
  • String这个类他本身就是final的,所以你定义字符串不须要加,除非你要把这个String变量弄成常量。正常的来说,final修饰就是一个不再改变的量,这样,他的修饰的字符串就要大写,比如:private static final String ...
    提问者采纳
    亲,final 加到属性上面就是常量了,也就是说他不能变了。String这个类他本身就是final的,所以你定义字符串不须要加,除非你要把这个String变量弄成常量。正常的来说,final修饰就是一个不再改变的量,这样,他的修饰的字符串就要大写,比如:private static final String PRICE=15;这这个PRICE就是个常量了。不明白可再问哈
    追问:
    谢谢。String这个类他本身就是final的和把String变量弄成常量这里有点混乱……那么String变量和类本身有关系吗?
    追答:

    这样给你说吧,现在有一个A类

    public class A { 

     private static final String  PRICE ="111";

     private static String price ="222";

     }

    然后用一个B类来修改A类里的的值

    public class B {

     A.PRICE ="3333";//这里会报错

     A.price ="2222";  //这里是正确的

       

    }

    这就说明:被final修饰的值是不可以改变的。现在你可能会感觉到奇怪的是为什么A.price ="2222"/这里是正确的。如下图:

    你发现没?变化的是A中的price这个引用,而不是字符串本身放发生了改变。这就是String这个类被final修饰的,所以,后面的“2222”不是在前面的“222”上直接加上一个“2”,而是单独弄了一个空间来放“2222”这个字符串。懂了没亲?

    追问:


    非常详细,谢谢。我想再请教一下这里可以直接用A.price ="2222";  来修改是直接调用类的常量吗?会显示创建price的提示??

    追答:
    A.price 表示什么就要弄清楚,他就是A类的price属性我想你很清楚,A.price就是类名.属性名对吧,那什么时候可以这样做呢,只要他的属性是被static修饰那么他就可以用类名.属性名得到该类的对应的属性,你就可以在面做操作了。相反,如果你的属性没有被static修饰,那么就要用new来创建该类的一个对象,比如,A类
    public class A { 
    private  String price ="222";
     public String getPrice() {
      return price;
     }
    
    public void setPrice(String price) {
      this.price = price;
     }
    }
    
    然后你想改这个price那么你就得在B类中这样:
    A a = new A();
     a.price ="3333";
     
    注意:static修属性如果是private,那么其他的类是不能纺问他的,你改为public 就可以
    展开全文
  • Java定义字符串

    千次阅读 2019-07-03 20:01:14
    Java 定义一个字符串最简单的方法是用双引号把它包围起来。这种用双引号括起来的一串字符实际上都是 String 对象,如字符串"Hello"编译后即成为 String 对象。因此也可以通过创建 String 类的实例来定义字符...

    Java 中定义一个字符串最简单的方法是用双引号把它包围起来。这种用双引号括起来的一串字符实际上都是 String 对象,如字符串"Hello"在编译后即成为 String 对象。因此也可以通过创建 String 类的实例来定义字符串。

    不论使用哪种形式创建字符串,字符串对象一旦被创建,其值是不能改变的,但可以使用其他变量重新赋值的方式进行更改。

    直接定义字符串

    直接定义字符串是指使用双引号表示字符串中的内容,例如"Hello Java"、"Java 编程"等。具体方法是用字符串常量直接初始化一个 String 对象,示例如下:

    
     
    1. String str="Hello Java";

    或者

    
     
    1. String str;
    2. str="Heilo Java";


    注意:字符串变量必须经过初始化才能使用。

    例 1

    下面的实例演示了直接创建字符串的几种用法。

    
     
    1. String str="我是一只小小鸟"; //结果:我是一只小小鸟
    2. String word;
    3. word="I am a bird"; //结果:I am a bird
    4. word="<h1>to fly</h1>"; //结果:<h1>to fly</h1>
    5. word="Let\'s say that it\'s true"; // 结果:Let's say that it's true
    6. System.out.println(word);
    7. word="北京\\上海\\广州"; //结果:北京\上海\广州

    使用 String 类定义

    在 Java 中每个双引号定义的字符串都是一个 String 类的对象。因此,可以通过使用 String 类的构造方法来创建字符串,该类位于 java.lang 包中,作用域是 final。

    String 类的构造方法有多种重载形式,每种形式都可以定义字符串。下面介绍最常用的几种形式。

    1. String()

    初始化一个新创建的 String 对象,表示一个空字符序列。

    2. String(String original)

    初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列。换句话说,新创建的字符串是该参数字符串的副本。例如:

    
     
    1. String str1=new String("Hello Java");
    2. String str2=new String(str1);

    这里 str1 和 str2 的值是相等的。

    3. String(char[ ]value)

    分配一个新的字符串,将参数中的字符数组元素全部变为字符串。该字符数组的内容已被复制,后续对字符数组的修改不会影响新创建的字符串。例如:

    
     
    1. char a[]={'H','e','l','l','0'};
    2. String sChar=new String(a);
    3. a[1]='s';


    上述 sChar 变量的值是字符串"Hello"。 即使在创建字符串之后,对 a 数组中的第 2 个元素进行了修改,但未影响 sChar 的值。

    4. String(char[] value,int offset,int count)

    分配一个新的 String,它包含来自该字符数组参数一个子数组的字符。offset 参数是子数组第一个字符的索引,count 参数指定子数组的长度。该子数组的内容已被赋值,后续对字符数组的修改不会影响新创建的字符串。例如:

    
     
    1. char a[]={'H','e','l','l','o'};
    2. String sChar=new String(a,1,4);
    3. a[1]='s';


    上述 sChar 变量的值是字符串"Hello"。该构造方法使用字符数组中的部分连续元素来创建字符串对象。offset 参数指定起始索引值,count 指定截取元素的个数。创建字符串对象后,即使在后面修改了 a 数组中第 2 个元素的值,对 sChar 的值也没有任何影响。

    展开全文
  • 使用Freemarker替换Java字符串定义变量

    千次阅读 2013-11-15 14:56:51
    import freemarker.cache.StringTemplateLoader; import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException;...import java.io.IOException;
    import freemarker.cache.StringTemplateLoader;
    import freemarker.template.Configuration;
    import freemarker.template.Template;
    import freemarker.template.TemplateException;
    
    import java.io.IOException;
    import java.io.StringWriter;
    
    public static String freemarkerProcess(Map input, String templateStr) {
    	StringTemplateLoader stringLoader = new StringTemplateLoader();
    	String template = "content";
    	stringLoader.putTemplate(template, templateStr);
    	Configuration cfg = new Configuration();
    	cfg.setTemplateLoader(stringLoader);
    	try {
    		Template templateCon = cfg.getTemplate(template);
    		StringWriter writer = new StringWriter();
    		templateCon.process(input, writer);
    		return writer.toString();
    	} catch (IOException e) {
    		e.printStackTrace();
    	} catch (TemplateException e) {
    		e.printStackTrace();
    	}
    	return null;
    }
    
    // test
    public static void main(String[] args) {
    	String template = "你好${姓名!'未知'},今天是${date?string('yyyy-MM-dd')}"; //变量参考freemarker语法
    	Map m = new HashMap();
    	m.put("姓名", "管理员");
    	m.put("date", new Date());
    	System.out.println(freemarkerProcess(m, template)); //"你好管理员,今天是2013-09-11"
    }

    展开全文
  • Java定义字符串(2种方式)

    千次阅读 2020-07-19 11:09:00
    -直接定义字符串是指使用双引号表示字符串的内容,例如“Hello Java”、“Java 编程”等。 String str="Hello Java"; String str; str="You are in my heart !"; 注意:字符串变量必须经过初始化才能使用。 2....

    1. 直接定义字符串

    -直接定义字符串是指使用双引号表示字符串中的内容,例如“Hello Java”、“Java 编程”等。


    String str="Hello Java";

    String str;
    str="You are in my heart !";

    注意:字符串变量必须经过初始化才能使用。


    2.使用 String 类定义

      1. String()
        初始化一个新创建的 String 对象,表示一个空字符序列。
      1. String(String original)
        初始化一个新创建的 String 对象,使其表示一个与参数相同的字符序列。换句话说,新创建的字符串是该参数字符串的副本。例如:
    String str1 = new String("Hello Java");
    String str2 = new String(str1);

    这里 str1 和 str2 的值是相等的。

    • 3.String(char[ ]value)
      分配一个新的字符串,将参数中的字符数组元素全部变为字符串。该字符数组的内容已被复制,后续对字符数组的修改不会影响新创建的字符串。例如:
    char a[] = {'H','e','l','l','0'};
    String sChar = new String(a);
    a[1] = 's';

    上述 sChar 变量的值是字符串“Hello”。 即使在创建字符串之后,对 a 数组中的第 2 个元素进行了修改,但未影响 sChar 的值。

    • 4.String(char[] value,int offset,int count)
      分配一个新的 String,它包含来自该字符数组参数一个子数组的字符。offset 参数是子数组第一个字符的索引,count 参数指定子数组的长度。该子数组的内容已被赋值,后续对字符数组的修改不会影响新创建的字符串。例如:
    char a[]={'H','e','l','l','o'};
    String sChar=new String(a,1,4);
    a[1]='s';

    上述 sChar 变量的值是字符串“ello”。该构造方法使用字符数组中的部分连续元素来创建字符串对象。offset 参数指定起始索引值,count 指定截取元素的个数。创建字符串对象后,即使在后面修改了 a 数组中第 2 个元素的值,对 sChar 的值也没有任何影响。

    展开全文
  • ava中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new String("droid");,这两种方式我们代码编写时...
  • Java编程】Java中字符串匹配

    千次阅读 2014-04-29 17:07:45
    在Java中字符串的匹配可以使用下面两种方法:  1、使用正则表达式判断字符串匹配  2、使用Pattern类和Matcher类判断字符串匹配 正则表达式的字符串匹配:  正则表达式:定义一组字符串的一系列字符和...
  • 学习Java过程,字符串碰到过String和StringBuffer,其中前者是不可变的,不能对字符串进行修改;...用var声明的是字符串变量,可以修改。通过代码来演示。 let str1 = "Hello1" var str2 = "Hello2
  • java中查找字符串

    千次阅读 2011-10-27 19:35:49
    java中查找字符串 String类提供了两种查找字符串的方法,它们允许在字符串中搜索指定的字符或字符串,其中的indexOf()方法用于搜索字符或子字符串首次出现的位置,lastIndexOf()方法用于搜索字符或子字符   ...
  • Java内存管理-探索Java中字符串String(十二)

    千次阅读 多人点赞 2019-05-04 23:18:39
    文章目录一、初识String类二、字符串的不可变性三、字符串常量池和 intern 方法四、面试题1、 String s1 = new String("hello");这句话创建了几个字符串对象?2、有时候面试的时候会遇到这样的问题:**都说String...
  • 例如:String a="aaaa"; String b="a"; String c=b; 可不可得到c="aaaa"呢?
  • 什么是 Java 字符串

    千次阅读 2019-01-31 10:53:47
    什么是 Java 字符串 程序开发中字符串无处不在,如用户登陆时输入的用户名、... Java 字符串被作为 String 类型的对象处理。 String 类位于 java.lang 包中。默认情况下,该包被自动导入所有的程序。 ...
  • Java中字符串定义

    千次阅读 2019-07-12 10:53:56
    public class DemoList { public static void main (String[] args) { String s1 = "Hello ... //字符串定义的第一种方式 String s2 = new String("Hello World!"); //字符串定义的第二种方式 System.out...
  • 前台模糊查询带有双引号,导致后台... 在java中通过自带的工具包处理 ------------------------------------------------------------------------------------------------------------------------------------...
  • 在java中定义变量,并输出

    千次阅读 2019-07-21 14:47:53
    变量赋值 (一般方法,都要初始化变量) 通过变量获取值 java中的数据类型 **1.基本类型:**byte short int long float double (精度由低到高) char boolean 2.引用类型 long...
  • java 中将字符串中运算符之间的变量截取出来 例如:Stirng str=“a+b*c/d”; 获取出a,b,c,d放入数组 问题补充:正则表达式我不熟,能不能给代码写处理参考参考啊 答: import java.util.regex.Matcher; ...
  • Java中字符串字面量

    千次阅读 2018-01-17 21:52:37
    目录字符串是不可变的字符串的存储——字符串常量池垃圾回收总结原文地址:https://javaranch.com/journal/200409/ScjpTipLine-StringsLiterally.html作者:Corey McGlone让我们由一个简单的...你可能已经你的程序
  • 编程语言-字符串变量定义和赋值

    千次阅读 2020-08-15 16:52:30
    编程语言有很多,今天来学习下不同编程语言下的字符串变量定义和赋值方式。 c语言: 字符串变量定义: char StringName[256] /* 使用字符数组存储字符串,其实际大小会比赋值的时候多1,因为编译器会末尾添加一...
  • java中String字符串解析

    千次阅读 2018-09-13 22:36:09
    创建String字符串的三种方式: 使用new关键字创建String s1 = new String(&amp;quot;abc&amp;quot;); 直接创建String s2 = &amp;quot;abc&amp;quot;; 使用字符串连接创建String s3 = &amp;...
  • Java中String字符串初始化细节

    万次阅读 多人点赞 2017-03-04 00:42:05
    //String类特有的创建字符对象的方式,更高效 在字符串缓冲区检测”abc”是否存在 若存在则不重复创建,将地址赋值给str1. 若不存在,则在字符串缓冲区创建对象并赋地址给str1.2 . String str1= new String( ...
  • 字符串定义定义不分配内存空间,不做任何操作; 字符串初始化 两种方式直接等号赋值,用new初始化,直接等号赋值放入内存池,其它变量也可以引用;new初始化分配内存空间,不可引用; 字符串赋值为null ...
  • java中关于字符串相等的比较问题

    万次阅读 2019-02-27 16:26:53
    Java中比较两个字符串是否相等的问题  Java中,关于比较两个字符串是否相等的问题,经常会出现。下面将分析使用 ==(注意:Java中 = 是赋值运算符,== 是比较是否相等) 和 equals()方法 来比较两个字符串相等的...
  • //JAVA字符串的研究 public class JustString { public static void main(String[] args) { String s1 = "ZhouJie"; String s2 = "Zhou"; String s3 = "Jie"; String s4 = "Zhou" + "Jie"; ...
  • 字符串变量和整形之间的相互转化任何编程语言中都是很常见的东西,请不要与(int)String等强制类型转换混淆,这样做是不对的,(String)int,诸如这样是不能完成字符串变量和整形之间的相互转化的,强制类型转换只...
  • Java中字符串相加和字符串常量相加区别
  •  1) SQL的常量和C语言以及其它语言的常量定义完全相同,就是一些字面值,比如15、'xyz'就分别是数值字面值和字符串型字面值,它们都属于常量;  2) 而变量是可以定义在SQL脚本的,但是我们平时写查询语句...
  • java判断回文字符串几种简单的实现

    万次阅读 多人点赞 2017-10-18 00:49:49
    java判断回文字符串几种简单的实现
  • Java进阶(二十一)java字符串与null区别

    万次阅读 多人点赞 2015-12-29 21:47:08
    java字符串与null区别 1、类型 null表示的是一个对象的值,而并不是一个字符串。例如声明一个对象的引用,Stringa=null; ""表示的是一个空字符串,也就是说它的长度为0。例如声明一个字符串Stringstr=""; 2、内存...
  • Python基础语法(字符串变量)案例详解

    千次阅读 多人点赞 2020-03-31 16:24:23
    本文献给Phython初学者 文章目录一.python中字符串的格式二.python中字符串输出三.python中字符串...如下定义变量b,存储的是字符串类型的值 b = "hello" 或者 b = 'hello' 双引号或者单引号的数据,就是字...
  • java 中字符串比较大小

    千次阅读 2018-04-16 16:37:21
    C++,两个字符串比较的代码可以为:(string1==string2)但在java中,这个代码即使两个字符串完全相同的情况下也会返回falseJava中必须使用string1.equals(string2)来进行判断补充如果:string s1="...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 384,570
精华内容 153,828
关键字:

在java中如何定义字符串型的变量

java 订阅