Java中输出语句的格式
发布时间:2025-05-21 06:27:56 发布人:远客网络
一、Java中输出语句的格式
1、输出语句如果是:System.out.println(i)。列印想输出的内容,列印完成后换行。
2、输出语句如果是:System.out.print(i+"\n")。列印想输出的内容,列印完成后换行。
3、输出语句如果是:System.out.print(i+"\t")。列印想输出的内容,列印完成后输入8个空格。
4、 I代表整数,A代表的是字串,你的问题中的20A应该改成A20,I、A后面的数字表示整数和字串的限定长度。
5、这说明myid是两位整数,numprocs是一位整数,processor_name是个长度不超过20个字元的字串,这三个变数都会在这个输出语句前面赋值的。
6、 write(*,10)这里的10就代表输出格式,它的形式下面有限定的10 FORMAT('hello world!process',I2,'of',I1,'on',A20)。
7、估计你是和JS混淆了,PHP里面+只是算数运算子,也就是说,只有数学加法的功能,没有JS里面那样的字元连线功能,PHP里面的字元连线用的是"点号"
8、你这俩句程式码的输出结果也很显然,第一个是a=10就是字串连线,第二个是 10,为什么呢
9、 PHP会试图把“a=”转化成一个数值然后和后面的10相加,转换结果是0,0+10=10了
10、 PS: PHP字元转换数值的原则是,从左开始如果是数字字串就一直找到非数字字串结尾,如果没有数字字元就转换成0,,比如"2a="+$a的结果就会是12
11、我来翻译给大家听,他的问题翻译成中文是这样的:
12、“java关于输出语句,输出哪些型别的必须加引号,哪些是不需要加引号的,加引号跟不加引号的区别是什么?”
13、一般输出String型别的需要加引号,但如果你输出的是个已赋值的string型别的变数,那就不用加引号了。
14、 for(int i= 0; i< values.length; i++){
15、 cout<< s<< endl;输出: 1(endl会换行哦)
16、 cout<<“s里的内容为:”<<s<<endl;输出: s里的内容为:1
17、 cout<<“Hello!”;输出: Hello!
18、备注:不一定要整型的,S也可以为字串等。
19、"5"是字串。字串的加法的含义是字串拼接,如果后面的不是字串,则先转化为字串
20、'5'是字元,字元的加法是字元的 ASCII码加法
21、 System.out.println('5'+ N);输出结果是在ASCII字元表中,从5开始数后面第N个字元。
22、典型的没学过C就直接上java的,基础不过关,这些基础应该先去学下C,了解最基础的知识(个人建议)
23、 echo输出字串效率高 print输出字串效率没echo高 printf函式输出格式化的字串 fprintf把格式化的字串写到指定的输出流 print_r var_dump
二、java System.out.println()输出规则是什么
首先,这个跟println输出规则没什么关系\x0d\x0a这个是跟运算规则和“+”连接符有关\x0d\x0a其次x,y,a,b,c都是int型,也就是可用“+”号计算的类型\x0d\x0a最后\x0d\x0a第一个输出x+y+"K"\x0d\x0a从左到右先计算x+y,结果为7是int类型,这里的"+"号是计算符号,而后“+”号是当字符串连接符号处理所以最后int的7和string类型的“K”连接后生成新的string,“7K”\x0d\x0a第二个输出“abc”+a+b+c+3\x0d\x0a也是从左到右计算,因为“abc”是字符串,而后跟“+”号是当字符串连接符号处理,所以是“abc5433”\x0d\x0a其后的“+”号都当成了字符串连接符号\x0d\x0a\x0d\x0a总之,当“+”号前后有字符串出现时,就当做字符串连接符号处理了。\x0d\x0a例如:\x0d\x0aint a=1;\x0d\x0aString s="a";\x0d\x0aSystem.out.println(a+s);\x0d\x0a输出"1a"\x0d\x0aSystem.out.println(s+a);\x0d\x0a输出“a1”\x0d\x0a\x0d\x0a而且这种情况就从左到右,依次看“+”号前后有没有字符串出现就行了。
三、JAVA的输入输出流是指的什么啊
Java语言的输入输出功能是十分强大而灵活的,美中不足的是看上去输入输出的代码并不是很简洁,因为你往往需要包装许多不同的对象。在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据流,字符串流,对象流,zip文件流....本文的目的是为大家做一个简要的介绍。
流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流。这时候你就可以想象数据好像在这其中“流”动一样,如下图:
Java中的流分为两种,一种是字节流,另一种是字符流,分别由四个抽象类来表示(每种流包括输入和输出两种所以一共四个):InputStream,OutputStream,Reader,Writer。Java中其他多种多样变化的流均是由它们派生出来的:
在这其中InputStream和OutputStream在早期的Java版本中就已经存在了,它们是基于字节流的,而基于字符流的Reader和Writer是后来加入作为补充的。以上的层次图是Java类库中的一个基本的层次体系。
在这四个抽象类中,InputStream和Reader定义了完全相同的接口:
int read(char cbuf[], int offset, int length)
而OutputStream和Writer也是如此:
int write(char cbuf[], int offset, int length)
这六个方法都是最基本的,read()和write()通过方法的重载来读写一个字节,或者一个字节数组。
更多灵活多变的功能是由它们的子类来扩充完成的。知道了Java输入输出的基本层次结构以后,本文在这里想给大家一些以后可以反复应用例子,对于所有子类的细节及其功能并不详细讨论。
public void samples() throws IOException{
//1.这是从键盘读入一行数据,返回的是一个字符串
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter a line:");
System.out.println(stdin.readLine());
BufferedReader in= new BufferedReader(new FileReader("IOStreamDemo.java"));
String s, s2= new String();
while((s= in.readLine())!= null)
//3.这是从一个字符串中逐个读入字节
StringReader in1= new StringReader(s2);
while((c= in1.read())!=-1)
System.out.print((char)c);
BufferedReader in2= new BufferedReader(new StringReader(s2));
PrintWriter out1= new PrintWriter(new BufferedWriter(new FileWriter("IODemo.out")));
while((s= in2.readLine())!= null)
out1.println(lineCount+++":"+ s);
System.err.println("End of stream");
对于上面的例子,需要说明的有以下几点:
1. BufferedReader是Reader的一个子类,它具有缓冲的作用,避免了频繁的从物理设备中读取信息。它有以下两个构造函数:
BufferedReader(Reader in, int sz)
void mark(int readAheadLimit)//标记当前位置
boolean markSupported()//是否支持标记
int read()//继承自Reader的基本方法
int read(char[] cbuf, int off, int len)//继承自Reader的基本方法
String readLine()//读取一行内容并以字符串形式返回
boolean ready()//判断流是否已经做好读入的准备
void reset()//重设到最近的一个标记
long skip(long n)//跳过指定个数的字符读取
2. InputStreamReader是InputStream和Reader之间的桥梁,由于System.in是字节流,需要用它来包装之后变为字符流供给 BufferedReader使用。
3. PrintWriter out1= new PrintWriter(new BufferedWriter(new FileWriter("IODemo.out")));
这句话体现了Java输入输出系统的一个特点,为了达到某个目的,需要包装好几层。首先,输出目的地是文件IODemo.out,所以最内层包装的是FileWriter,建立一个输出文件流,接下来,我们希望这个流是缓冲的,所以用BufferedWriter来包装它以达到目的,最后,我们需要格式化输出结果,于是将PrintWriter包在最外层。
Java提供了这样一个功能,将标准的输入输出流转向,也就是说,我们可以将某个其他的流设为标准输入或输出流,看下面这个例子:
public static void main(String[] args) throws IOException{
PrintStream console= System.out;
BufferedInputStream in= new BufferedInputStream( new FileInputStream("Redirecting.java"));
PrintStream out= new PrintStream( new BufferedOutputStream( new FileOutputStream("test.out")));
BufferedReader br= new BufferedReader( new InputStreamReader(System.in));
while((s= br.readLine())!= null)
在这里java.lang.System的静态方法
static void setIn(InputStream in)
static void setOut(PrintStream out)
提供了重新定义标准输入输出流的方法,这样做是很方便的,比如一个程序的结果有很多,有时候甚至要翻页显示,这样不便于观看结果,这是你就可以将标准输出流定义为一个文件流,程序运行完之后打开相应的文件观看结果,就直观了许多。
Java流有着另一个重要的用途,那就是利用对象流对对象进行序列化。下面将开始介绍这方面的问题。
在一个程序运行的时候,其中的变量数据是保存在内存中的,一旦程序结束这些数据将不会被保存,一种解决的办法是将数据写入文件,而Java中提供了一种机制,它可以将程序中的对象写入文件,之后再从文件中把对象读出来重新建立。这就是所谓的对象序列化Java中引入它主要是为了RMI(Remote Method Invocation)和Java Bean所用,不过在平时应用中,它也是很有用的一种技术。
所有需要实现对象序列化的对象必须首先实现Serializable接口。下面看一个例子:
public class Logon implements Serializable{
private Date date= new Date();
private transient String password;
Logon(String name, String pwd){
String pwd=(password== null)?"(n/a)": password;
return"logon info:\n"+"username:"+ username+"\n date:"+ date+"\n password:"+ pwd;
public static void main(String[] args) throws IOException, ClassNotFoundException{
Logon a= new Logon("Morgan","morgan83");
System.out.println("logon a="+ a);
ObjectOutputStream o= new ObjectOutputStream( new FileOutputStream("Logon.out"));
long t= System.currentTimeMillis()+ seconds* 1000;
while(System.currentTimeMillis()< t);
ObjectInputStream in= new ObjectInputStream( new FileInputStream("Logon.out"));
System.out.println("Recovering object at"+ new Date());
a=(Logon)in.readObject();
System.out.println("logon a="+ a);
类Logon是一个记录登录信息的类,包括用户名和密码。首先它实现了接口Serializable,这就标志着它可以被序列化。之后再main方法里ObjectOutputStream o= new ObjectOutputStream( new FileOutputStream("Logon.out"));新建一个对象输出流包装一个文件流,表示对象序列化的目的地是文件Logon.out。然后用方法writeObject开始写入。想要还原的时候也很简单ObjectInputStream in= new ObjectInputStream( new FileInputStream("Logon.out"));新建一个对象输入流以文件流Logon.out为参数,之后调用readObject方法就可以了。
需要说明一点,对象序列化有一个神奇之处就是,它建立了一张对象网,将当前要序列化的对象中所持有的引用指向的对象都包含起来一起写入到文件,更为奇妙的是,如果你一次序列化了好几个对象,它们中相同的内容将会被共享写入。这的确是一个非常好的机制。它可以用来实现深层拷贝。
关键字transient在这里表示当前内容将不被序列化,比如例子中的密码,需要保密,所以没有被写入文件。
对Java的输入输出功能,就浅浅的介绍到这里,本文的目的只是开一个好头,希望能让大家对Java输入输出流有个基本的认识。