Java课件第二章补充字符串
java课件 ppt
常用操作
HashMap类提供了添 加、删除、获取、设置 键值对等常用操作,还 提供了根据键或值进行 遍历等操作。
线程安全
HashMap类不是线程 安全的,如果需要在多 线程环境下使用,可以 斟酌使用 ConcurrentHashMap 类。
Date和Calendar类
日期时间获取
Date类提供了获取当前日期和时间的方法,Calendar类提供了 更详细的日期和时间操作,如年月日时分秒等。
未受检查特殊
编译器不会强制处理的特殊,如NullPointerException、 ArrayIndexOutOfBoundsException等。
特殊的处理方式
01
02
03
04
05
使用try-catch语句块捕 获并处理特殊。
使用try-catch语句块可 以捕获指定的特殊类型 ,并在catch块中处理该 特殊。
Java程序可以在任何支持Java虚拟机的操作 系统上运行。
丰富的API
Java提供了丰富的API,包括输入输出、网 络编程、数据库连接等方面的功能。
Java的应用领域
Web开发
Java的Servlet和JSP技术使得Java成为Web 开发的主流语言之一。
企业级应用
Java的EJB和J2EE技术使得Java成为开发企 业级应用的首选语言。
if语句
根据条件判断执行不同的代码块 。
for语句
重复执行一段代码指定的次数。
函数
定义函数
使用"def"关键字定 义一个函数,指定函 数名和参数列表。
调用函数
使用函数名和参数列 表调用一个函数。
函数返回值
使用"return"关键字 返回一个值。
高等教育自学考试Java语言程序设计(一)第二章数据和表达式课件
第二章数据和表达式目录第一节基本语法元素第二节基本数据类型第三节表达式01 基本语法元素1.空白在java程序中,换行符及回车符都可以表示一行的结束,它们可被看作是空白,另外空格键,水平定位键(Tab)亦是空白,编译器会忽略多余的空白。
2.注释(1)单行注释://一行内的注释(2)多行注释:/*一行或多行注释*/(3)文档注释:/**文档注释*/3.语句、分号和块语句是Java程序的最小执行单位,程序的各语句间以分号“;”分隔。
一个语句可以写在连续的若干行内。
大括号“{”和“}”包含的一系列语句称为块语句,简称块。
语句块可以嵌套,即语句块中可以含有子语句块;关键字Java语言定义了许多关键字,关键字也称为保留字,他们都有各自的特殊意义和用途。
*标红的为预留关键字,尚未使用标识符1.标识符是由字母、数字、下划线(_)或美元符($)组成的字符串,其中数字不能作为标识符的开头。
2.标识符区分大小写,长度没有限制。
3.标识符中不能含有其他符号,例如+、=、*、及%等,当然也不允许插入空白。
4.标识符可用作变量名、方法名、接口名和类名。
5.Java源代码采用的是Unicode码,用16位无符号二进制数表示一个字符,Unicode字符集中的字符数可达65535个,汉字也是字符,所以也可以出现在标识符中,例如“这是一个标识符”也是一个正确的标识符。
Java编程风格编写程序时应该注重自己的编程风格,增加必要的注释和空格,采用缩进格式。
定义的各种标识符也要遵从惯例注意大小写。
程序中尽量不使用没有含义的标识符。
最好能望名知义,例如,变量用于计数,可将它命名为counter;用变量保存税率,可将它命名为taxRate。
·类名或接口名:多为名词,含有大小写,每个单词的首字母大写如HelloWorld、Customer、SortClass 等。
·方法名:多是动词,含有大小写,首字母小写,其余各单词的首字母大写。
第2章 Java编程基础.ppt
14、下列选项中,按照箭头方向,不可以进行自
动类型转换的是( )
A、byte → int
B、int → long
C、double →long D、short → int
18.在程序中为了标明不同的进制,数据都有特定
的标识,八进制必须以_____开头;十六进制必须
以_________或_________开头。
19.Java语言中,double类型所占存储空间为 _________个字节。 20.简述什么是变量的作用域
21.请列举Java语言中的八种基本数据类型,并说 明每种数据类型所占用的空间大小
D、goto
8、下列转义字符中,不合法的是( )
A、'\n‘
B、'\x'
C、'\r'
D、'\t'
9、下列选项中,哪一个是十进制数6的二进制值 ()
A、111 C、110
B、101 D、011
10、下列选项中,不属于基本数据类型的是( )
A、String
B、short
C、boolean
D、char
11、下列关于浮点型数据的定义,哪一个不能通 过编译( )
52、下面关于方法定义的描述中,正确的是( ) A、当方法没有返回值时,返回值类型要定义为void B、当方法没有返回值时,返回值类型可以不写 C、当方法没有返回值时,不能有return语句 D、方法是不可以没有参数的
53、Java允许在一个程序中定义多个同名的方法, 但是参数的类型或个数必须不同,这就是方法的 重载( )
java程序设计教程第六版 第2章
• 参考 Addition.java (第41页)
1-7
转义字符
问题:
• 如何打印一个带双引号的字符串?
I said "Hello" to you。 System.out.println ("I said "Hello" to you.");
• 上面的语句会让编译器报错,因为编译器会把第二个双 引号看作字符串的结束
+
a + (b – c) / d a b c / d
1-32
赋值运算符
• 赋值运算符比算术运算的优先级低
首先计算赋值运算符右边表达式的值 answer = 4 sum / 4 + MAX * lowest; 1 3 2
然后将计算结果存储于赋值号左边的变量中
1-33
赋值运算符
• 赋值运算符的两边可以包含相同的变量
例如MAX_OCCUPANCY表示一个剧院容纳的最多人数
2、 常量使得程序维护更加方便
如果程序中多处使用一个常量,那么只需要在一个地方修改
3、 常量获得初值后不能被修改,这样可避免其他程序员 疏忽导致的错误。
1-15
概要
字符串
变量பைடு நூலகம்赋值 基本数据类型
表达式
数据类型转换 交互程序 图形 Java Applet 绘图
1-20
1、整数类型
上面所说的整数long的形式如下: 5L 表示十进制值5,是一个long值 075L 表示八进制数值75,是一个long值 0x9ABCL 表示十六进制的数值9ABC,是一个long值 如果直接是 5 表示十进制5,是一个int型的
1-21
2、浮点类型double,float
Java编程基础及应用Java语言基础
2.1关键字
Java是一种严格的类型化语言,Java处理的每一个数据 都必须指明类型,正是因为这样的规定, Java 才具有 了良好的安全性与健壮性。
关键字(key word)是电脑语言里事先定义的,包括具 有特殊意义的标识符和特殊意义的变量。
2.1关键字
abstract case continue enum for instanceof new return switch transient assert catch default extends goto int package strictfp synchronized try boolean char do final if interface private short this void sd class double finally implements long protected static throw volatile byte const else float import native public super throws while
2.3.5 引用数据类型
程序运行结果:
a is 1 b is 2 x is java.awt.Point[x=0,y=0] y is java.awt.Point[x=1,y=1] Performing assignment andsetLocation... a is 3 b is 2 x is java.awt.Point[x=5,y=5] y is java.awt.Point[x=5,y=5]
2.3.5 引用数据类型
不能对原始类型调用方法,但可以对对象调用方法:
int j = 5; j.hashCode(); //错误 Integer i=new Integer(5); i.hashCode(); //正确
javaPPT课件(2024)
常用的集合类
如`ArrayList`、`LinkedList`、`HashSet`、 `TreeSet`、`PriorityQueue`等。
ABCD
2024/1/26
主要的集合接口
包括`Collection`、`List`、`Set`、`Queue`、 `Deque`等。
迭代器与for-each循环
24
JSP技术
JSP定义
JSP语法
JSP内置对象
JSP与Servlet关系
JSP(JavaServer Pages)是 一种基于Java的服务器端编程 技术,用于创建动态Web页面 。
JSP页面由HTML标记和嵌入的 Java代码组成,支持表达式、 脚本元素、指令、动作等。
JSP提供了一组内置对象,如 request、response、session 等,用于处理HTTP请求和生 成响应。
Spring MVC
介绍Spring MVC的工作原理、核心组件以及常用注解。
28
Hibernate框架
Hibernate概述
简要介绍Hibernate的起源 、发展以及特点。
ORM原理
阐述对象关系映射(ORM) 的原理和Hibernate如何实 现ORM。
Hibernate核心 API
详细介绍Hibernate的核心 API,包括Session、 Transaction、Query等。
2024/1/26
19
多线程编程
线程的概念
线程是程序中的执行单元 ,Java支持多线程编程。
创建线程的方式
可以通过继承`Thread`类 或实现`Runnable`接口来 创建线程。
线程的生命周期
包括新建、就绪、运行、 阻塞和死亡五种状态。
《java基础教程》课件
这类异常在编译时被检查,必须显式地处理它们,否则程序将无法通过编译。常见的检查型异常包括IOException、ClassNotFoundException等。
非检查型异常
这类异常在运行时被抛出,不需要显式地处理它们。常见的非检查型异常包括NullPointerException、ArrayIndexOutOfBoundsException等。
常用操作
HashMap类提供了多种遍历键值对的方法,如keySet()、entrySet()等。
遍历
05
Java异常处理
异常的分类
Java中的异常分为两大类,即检查型异常(Checked Exceptions)和非检查型异常(Unchecked Exceptions)。检查型异常在编译时被检查,而非检查型异常在运行时才被抛出。
用于组合布尔值,返回值为布尔值。
03
跳转语句
控制程序流程的转移,包括break语句、continue语句和return语句。
01
条件语句
根据条件选择执行不同的语句块,包括if语句和switch语句。
02
循环语句
重复执行一段代码,包括for循环、while循环和do-while循环。
函数定义
定义一个具有特定功能的代码块,包括返回值类型、函数名和参数列表。
动态数组
ArrayList类提供了多种常用操作,如添加元素、删除元素、获取元素等。
常用操作
ArrayList类提供了多种遍历数组的方法,如for循环、迭代器等。
遍历
HashMap类是一个键值对存储的集合,可以通过键快速查找对应的值。
键值对存储
HashMap类提供了多种常用操作,如put()、get()、remove()等。
Java程序设计(高校系列教材课件).ppt
1.21
高等学校计算机应用人才培养系列教材
常量、关键字和标识符
常量
常量代表某一特定类型的具体值,常量有数字常量、 布尔常量、字符常量和字符串常量之分。
数字常量包括两种:整型常量和浮点型常量。常用的 整型常量都是十进制的。整型常量还有另外两种进制 ,八进制和十六进制。在Java中,八进制的值通过在 它的前面加一个前导0来表示,而通过前导的0x或0X来 表示一个十六进制的值。
) 分布式(Distributed)
高等学校计算机应用人才培养系列教材
1.7
Java和Internet
在使用Java时,用户将从Internet下载Java字节码并在自 己的计算机上运行。在Web网页中运行的Java程序叫做 Applet。要使用Applet,需要有支持Java的浏览器,它可 以解释字节码。
True或false
1.19
高等学校计算机应用人才培养系列教材
Java的数据类型和变量
变量
变量是Java的一个基本存储单元。在Java中,在使用变量之前需要先 声明变量。变量声明通常包括三部分:变量类型、变量名、初始值, 其中变量的初始值是可选的。
以下是几个各种变量声明的例子,有一些包括了变量的初始化。
char
boolean
所占用字节数 1 2 4 8 4 8
2
1
范围 -128到127 -32,768到32, 767 -2,147,483,648到2,147,483,647 -9,223,372,036,854,775,808到 -9,223,372,036,854,775,807 大约 ±3.4+38 大约 ±1.7E+308
1.10
高等学校计算机应用人才培养系列教材
java培训ppt课件全套课件ppt
Java中的异常处理机制包括捕获异常(Catch)、抛出异常(Throw)和声明异常(Throw)。
Java多线程编程
新建、就绪、运行、阻塞、终止。
线程具有5种状态
字符串编码
String类支持多种编码格式,如UTF-8、GBK等,可以方便地进行字符串的编码和解码。
ArrayList类是一个动态数组,可以根据需要自动增长和缩小。
动态数组
常用操作
线程安全
ArrayList类提供了添加、删除、查找等常用操作的方法。
ArrayList类不是线程安全的,如果需要在多线程环境下使用,可以考虑使用Vector类。
Java语言特点
Web开发、移动开发、大数据、游戏开发等。
Java应用领域
03
常用工具
Git、Maven、Gradle等在Java开发中的使用。
01
JDK安装与配置
下载和安装JDK,配置环境变量等。
02
集成开发环境(IDE)
Eclipse、IntelliJ IDEA等常用Java IDE的介绍和选择。
Java面向对象编程
面向对象编程(OOP)
一种编程范式,通过使用对象来设计和实现软件系统。
对象
现实世界中的事物在计算机中的表示,具有状态和行为。
类
对象的抽象,定义了对象的属性和方法。
实例
类的具体实例,具有类定义的属性和行为。
02
03
04
01
抽象
定义抽象类或抽象方法,用于规定接口和行为,但不实现具体实现细节。
java课件ppt
Lock接口和ReentrantLock类,提供 了比synchronized更灵活的线程同步 机制,可以实现更复杂的同步操作。
感谢您的观看
THANKS
while语句
当条件满足时重复执行一段代码。
for语句
指定循环次数重复执行一段代码。
函数
函数定义
定义一个具有特定功能的代码块,并为其命 名。
函数参数
传递给函数的值,用于在函数内部使用。
函数返回值
函数执行完毕后返回的结果。
函数调用
使用函数名和参数调用函数,并执行其功能 。
03
Java面向对象编程
面向对象的概念
throw语句用于手动抛出异常,可以在方法中使用throw语句 抛出异常,然后在调用该方法的方法中捕获并处理该异常。
06
Java多线程编程
线程的概念
线程具有5种状态:新建、就绪、运 行、阻塞、终止。
线程具有两个基本属性:优先级和状 态。
线程的创建和启动
01
继承Thread类并重写run()方法,创建线程对象后调用 start()方法启动线程。
异常的分类
运行时异常
运行时异常是那些可能在编译时无法预料到的异常,例如空指针异常(NullPointerException)、数组越界异 常(ArrayIndexOutOfBoundsException)等。
检查异常
检查异常是那些在编译时就能够被检查出来的异常,例如文件未找到异常(FileNotFoundException)、网络 连接中断异常(SocketException)等。
02
实现Runnable接口并重写run()方法,将Runnable对象传递给 Thread构造函数创建线程对象,然后调用start()方法启动线程。
精品课件-JAVA语言程序设计教程(张席)-第2章
第2章 数据类型、运算符、表达式和语句 程序运行结果如图2.3所示。
图2.3 一维数组应用举例
27
第2章 数据类型、运算符、表达式和语句 2.5 运算符与表达式
对各种类型的数据进行加工的过程称为运算,表示各 种不同运算的符号称为运算符,参与运算的数据称为操作数。 Java语言运算符如图2.4所示。
byte a=100;
//定义整型变量 a,且赋初值为 100
short b=1000; //定义整型变量 b,且赋初值为 1000
int c=10000;
//定义整型变量 c,且赋初值为 10000
long d=100000L; //定义整型变量 d,且赋初值为 100000
float e= 5.12f ; //指定变量 e 为 float 型,且赋初值为 5.12
char byte、short byte、short、int byte、short、int、long byte、short、int、long、float
int int long float double
17
第2章 数据类型、运算符、表达式和语句
2.3.2 强制类型转换
高优先级数据要转换成低优先级数据,需用到强制类型转换,
其转换格式为
(类型名)(数据或表达式)
例如:
int x;
short a=(short)x;
/*把int型变量x强制转换为short
型*/
18
第2章 数据类型、运算符、表达式和语句 2.4 数 组
2.4.1 数组的概念 数组是相同类型的数据按顺序组成的一种复合数据类型,通
过数组名加数组下标来使用数组中的数据,下标从0 开始。
21
java面向对象程序设计第二章
简单数据类型及其对应包装类
简单数据类型不是类,但Java提供了与简单类型对应的包装类
普通数据 类型
char byte short
对应的包 装类
Character Byte Short
它们之间的相互转化方法为(以int和 Integer为例): 简单数据类型转化为类对象的方法是:
通过相应类的构造方法来完成。如
Java 初级
第二章 Java语言基础
主要内容
简单数据类型 表达式Βιβλιοθήκη 控制语句简单数据类型
标识符
定义:程序员对程序中的各个元素加以命名时使用的命 名记号称为标识符(identifier)。 Java语言中,标识符是以字母,下划线“_‖,美元符“$‖ 开始的一个字符序列,后面可以跟字母,下划线,美元 符,数字。例如,identifier,userName,User_Name, _sys_val, $change为合法的标识符,而2mail(数字开 头)、 room#(非法字符)、class(关键字)、a-class(含 有运算符)都为非法的标识符。
浮点型(Cont)
实型变量的类型:
数据类型 float double 所占位数 32 64 数的范围 1.4E-45 ~3.4E+38 4.9E-324 ~1.7E308
定义一个float类型的浮点数方法
给一个带小数的数后面加上f(包括科学计数法)。 将能隐式转化的数赋值给浮点变量:如char类型、整型 (十进制、八进制、十六进制)。
在选用整数类型上,一定要注意数的范围,否则可能 由于数的类型选择不当而造成溢出,例如下面的代码 add就存在着潜在的溢出问题,从而为程序带来Bug
JAVAString类精品PPT课件
(str1 == str3)); // --> true System.out.println("str2 == str3 --> " +
(str2 == str3)); // --> true } }
String类两种实例化方式的区别 —— 通过关键字new赋值
public class StringDemo08 { public static void main(String[] args) { String str = new String("hello"); }
}
字符串的内容一旦声明则不可改变
}
不正确的使用
public class StringDemo10 { public static void main(String[] args) { String str1 = "LiXingHua"; for (int i = 0; i < 100; i++) { str1 += i; } System.out.println(str1); }
public class StringDemo09 { public static void main(String[] args) { String str = "hello"; str = str + " world!"; System.out.println("str = " + str); }
《Java开发基础》课件
企业级应用
Java在Android开发中占据主导地位,许多Android应用都是使用Java开发的。
移动应用
Java的图形库和性能使得Java在游戏开发领域也有广泛应用。
游戏开发
03
物联网
随着物联网的发展,Java在嵌入式系统和物联网设备中的应用也将得到进一步拓展。
01
云计算和微服务
随着云计算和微服务的发展,Java在构建分布式系统方面将发挥更大的作用。
02
人工智能和机器学习
Java在人工智能和机器学习领域的应用也在不断增长。
02
CHAPTER
Java开发环境搭建
JDK是Java开发的基础工具包,需要先下载并安装JDK。
总结词
首先,访问Oracle官网或其他信赖的Java发行版提供者网站,下载与你的操作系统相匹配的JDK版本。然后,按照提示完成安装过程。
字符串比较
String类提供了比较字符串的方法,如equals()和compareTo(),可用于比较两个字符串是否相等或按字典序比较。
字符串转换
String类提供了将字符串转换为其他数据类型的方法,如Integer.parseInt()和Double.parseDouble()。
键值对存储
HashMap类是一个存储键值对数据的容器,其中每个元素都包含一个键和一个值。
synchronized关键字
02
Lock接口提供了更灵活的锁机制,可以实现更复杂的同步操作。
Lock接口
03
volatile关键字用于保证多线程访问共享变量的可见性,确保每个线程都能看到最新的共享变量值。
Java语言ppt课件(完整版)
用于创建和操作字符串对象,提供了一系列的 方法来处理字符串,如连接、比较、查找、替 换等。
StringBuffer类
可变的字符序列,用于在字符串中进行插入、删除和 替换等操作,效率高于String类。
StringBuilder类
与StringBuffer类似,但StringBuilder的方法 不是线程安全的,因此在单线程环境下效率更 高。
注解概念
阐述注解的定义、分类和作用,以及Java内置的注解类型。
自定义注解
讲解如何定义和使用自定义注解,包括元注解和注解元素。
注解处理器
介绍注解处理器的工作原理,以及如何使用注解处理器处理注解。
元数据与反射
探讨元数据与反射的关系,以及如何通过反射获取注解信息。
05
Java常用类库与API
字符串处理类库
Java语言的应用领域
企业级应用
Java语言在企业级应用开发中占据主 导地位,如Web应用、分布式系统、 大数据处理等
01
02
移动应用
Android操作系统使用Java作为官方 开发语言,大量移动应用采用Java开 发
03
游戏开发
许多大型游戏使用Java编写,如 Minecraft、Runescape等
DataInputStream/DataOutputStre am类:用于读写Java原始数据类型的 数据流,支持数据的序列化和反序列 化。
多线程编程相关类库
Thread类
Java中的线程类,可以通过继承 Thread类并重写run()方法来实现多线
程程序。
Callable接口
与Runnable接口类似,但Callable接 口可以返回执行结果并且可以抛出异
《Java讲解方法》课件
20多年来,Java不断发展和完善,广泛应用于企业级应用、移动应用、游戏开发等领域。
Web开发
Java的Servlet和JSP技术使得Java成为Web开发领域的领先者。
企业级应用
Java的EJB和J2EE技术使得Java成为构建企业级应用的理想选择。
数据类型
变量是用来存储数据的标识符。在Java中,变量名必须以字母、美元符号($)或下划线(_)开头,后面可以跟字母、美元符号($)、下划线(_)或数字。变量名区分大小写。
变量
类与对象:类是对象的模板,对象是类的实例。类定义了对象的属性和方法。对象的属性在创建对象时初始化,方法通过对象调用执行。
06
TreeSet:基于树结构实现,元素自动排序,但插入、删除操作速度较慢。
它允许使用键来查找对应的值。
HashMap:基于哈希表实现,提供了快速的查找操作。
TreeMap:基于树结构实现,键自动排序,但查找操作速度较慢。
Map接口是Java集合框架中的一种接口,表示键值对映射的集合。
Map接口的主要实现类有HashMap、LinkedHashMap和TreeMap等。
03
Java提供了Executors类和ThreadPoolExecutor类等工具来创建和管理线程池。
04
使用线程池可以降低系统开销,提高线程的利用率和系统的吞吐量。
Java网络编程
03
Socket编程示例
通过一个简单的聊天室程序示例,演示了如何使用Socket编程实现客户端和服务端的通信。
Java常用类库
字符串比较
String类提供了比较两个字符串的方法,如equals()和compareTo()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Trace Code
String s = "Java"; s = "HTML";
After executing s=“java”;
s 0x1245
s:String
String object not be changed
After executing s=“HTML”;
Note:The parameter is a String object
5
Difference between new and shorthand initializer
String a= "abc"; String b= "abc"; Question: How many String objects are created?
One
6
Note
A new object is created if you use the new operator. If you use the string initializer, no new object is created if the interned object is already created.
improve efficiency and save memory Using String object’s intern method to return a canonical string
10
Canonical Strings
intern: public native String intern() Returns a canonical representation for the string object.
Chapter 2 The String Class
I Constructing a String II String Methods
1
The String Class
Constructing a String: Obtaining String length and Retrieving Individual Characters in a string String String Concatenation (concat) Substrings (substring(index), substring(start, end)) Comparisons (equals, compareTo) String Conversions Finding a Character or a Substring in a String Conversions between Strings and Arrays Converting Characters and Numeric Values to Strings
If s and t are strings such that s.equals(t), it is guaranteed that
s.intern() == t.intern().
11
Examples
String s = "Welcome to Java"; String s1 = new String("Welcome to Java"); String s2 = s1.intern(); String s3 = "Welcome to Java"; System.out.println("s1 == s is " + (s1 == s)); System.out.println("s2 == s is " + (s2 == s)); System.out.println("s == s3 is " + (s == s3));
3
Storage String pool & stack & heap
String pool(字符串池): JVM has a String pool, it saves a lot of String objects that created by shorthand initializer. Data sharing Stack (栈) : Store primitive data(char、byte、short、 int、long、float、double、boolean)and constructor. Data sharing. heap(堆):Store Object.
2
Constructing Strings
Format: String newString = new String(stringLiteral); String message = “stringLiteral";
Example: String message = new String(“Hello"); String message = "Welcome to Java";
4
Difference between new and shorthand initializer
String str=new String("abc");
Question: How many String objects are created? Two
Constructor: public String(String original) { //other code ... }
× s 0x1245
s:String String object for “HTML”
s:String String object for “Java”
9
Canonical Strings(规范字符串)
canonical string: if two String objects were created with the same string literal using the shorthand initializer, then the JVM stores them in the same object. This string literal is called canonical string.
7
Strings Are Immutable
A String object is immutable; its contents cannot be changed.
Does the following code change the contents of
the string?
String s = "Java"; s = "HTML";