java對象輸出
❶ java 怎麼輸出一個對象的值
首先得看是啥對象,有變數的System.out.println(object.paraName)就可以
❷ java輸出一個對象到文件
先創建一個文件對象:
File file = new File("");
if (!file.exists())
file.createNewFile();
然後創建一個文件輸出流
FileOutputStream fos = new FileOutputStream(file);
然後可以把一個對象用.toString()方法轉換成字元串。
然後再用.getBytes()轉換成字元數組。
byte[] bytes = "".getBytes();
寫入文件:
fos.write(bytes);
❸ 在Java中,用List存儲的對象,怎麼輸出
package sync;
import java.util.*;
public class L4_1 {
public static void main(String[] args) {
ArrayList<Xs> aa1 = new ArrayList<Xs>();
System.out.println("大小為" + aa1.size());
Xs xs1=new Xs("悟空",15,90);
Xs xs2 = new Xs("八戒", 13, 70);
Xs xs3 = new Xs("沙僧", 14, 75);
Xs xs4 = new Xs("小白龍", 20, 80);
aa1.add(xs1);// add是一個添加的方法
aa1.add(xs2);// 添加一個對象
aa1.add(xs3);
aa1.add(1, xs4);
System.out.println("大小為" + aa1.size());// aa1.size()有多少個對象//
//aa1.remove(1);// 刪除1號對象
for(int i=0;i<aa1.size();i++){
System.out.println(aa1.get(i));
}
}
}
class Xs {
private String xingming;
private int xuehao;
private int chengji;
Xs(String xingming, int xuehao, int chengji) {
this.xingming = xingming;
this.chengji = chengji;
this.xuehao = xuehao;
}
public String getXingming() {
return xingming;
}
public int getXuehao() {
return xuehao;
}
public int getChengji() {
return chengji;
}
@Override
public String toString() {
// TODO Auto-generated method stub
return xingming+","+xuehao+","+chengji;
}
}
❹ java怎麼輸出
java控制台輸出由print( ) 和 println( )來完成最為簡單。這兩種方法由rintStream(System.out引用的對象類型)定義。盡管System.out是一個位元組流,用它作為簡單程序的輸出是可行的。因為PrintStream是從OutputStream派生的輸出流,它同樣實現低級方法write(),write()可用來向控制台寫數據。PrintStream 定義的write( )的最簡單的形式如下:
void write(int byteval)
該方法按照byteval指定的數目向文件寫位元組。盡管byteval 定義成整數,但只有低位的8個位元組被寫入。下面的短例用 write()向屏幕輸出字元「A」,然後是新的行。
// Demonstrate System.out.write().
class WriteDemo {
public static void main(String args[]) {
int b;
b = 'A';
System.out.write(b);
System.out.write(' ');
}
}
一般不常用write()來完成向控制台的輸出(盡管這樣做在某些場合非常有用),因為print()和println() 更容易用。
四、PrintWriter類
盡管Java允許用System.out向控制台寫數據,但建議僅用在調試程序時或在常式中。對於實際的程序,Java推薦的向控制台寫數據的方法是用PrintWriter流。PrintWriter是基於字元的類。用基於字元類向控制台寫數據使程序更為國際化。PrintWriter定義了多個構造函數,這里所用到的一個如下:
PrintWriter(OutputStream outputStream, boolean flushOnNewline)
outputStream是OutputStream類的對象,flushOnNewline控制Java是否在println()方法被調用時刷新輸出流。如果flushOnNewline為true,刷新自動發生,若為false,則不發生。
PrintWriter支持所有類型(包括Object)的print( )和println( )方法,這樣,就可以像用ystem.out那樣用這些方法。如果遇到不同類型的情況,PrintWriter方法調用對象的toString()方法並列印結果。用PrintWriter向外設寫數據,指定輸出流為System.out並在每一新行後刷新流。例如這行代碼創建了與控制台輸出相連的PrintWriter類。
PrintWriter pw = new PrintWriter(System.out, true);
下面的應用程序說明了用PrintWriter處理控制台輸出的方法:
// Demonstrate PrintWriter
import java.io.*;
public class PrintWriterDemo {
public static void main(String args[]) {
PrintWriter pw = new PrintWriter(System.out, true);
pw.println("This is a string");
int i = -7;
pw.println(i);
double d = 4.5e-7;
pw.println(d);
}
}
該程序的輸出如下:
This is a string
-7
4.5E-7
❺ 求助:關於java中的對象輸出問題
什麼叫輸出對象?輸出流是一個位元組一個位元組輸出的,一旦寫到文件里就不存在什麼「對象」了。
你把問題描述清楚,或者把代碼寫出來。
------------------------------------------------------------------------------------
首先你的代碼寫得有點問題。if 語句和 catch 語句都有點問題:
@Override
public void actionPerformed (ActionEventarg0){
try{
Student Stu1 = new Student();
Stu1.Sage = Integer.parseInt(TextSage.getText());
Stu1.Smajor = TextSmajor.getText();
Stu1.Sno = TextSno.getText();
if (TextSsex.getText().equals("男"))
Stu1.Ssex = true;
else if (TextSsex.getText().equals("女"))
Stu1.Ssex = false;
else
JOptionPane.showMessageDialog(null, "請輸入正確的性別");
FileOutputStream FOS = new FileOutputStream("F:\\StuInformationOutFile.txt", true);
ObjectOutputStream OOS = new ObjectOutputStream(FOS);
OOS.writeObject(Stu1);
OOS.close();
} catch (IOExceptione ioe) {
System.out.print("C");
}
}
❻ java 如何正確的輸出集合或者對象的值
輸出集合使用遍歷的方法,比如:
List<String>list=newArrayList<>();
list.add("a");
list.add("b");
list.add("c");
for(Strings:list){
System.out.println(s);
}
輸出對象的值需要重寫toString()方法;如:
publicclassPerson{
privateStringname;
privateintage;
//getter,setter方法省略
...
@Override
publicStringtoString(){
return"name="+name+",age="+age;
}
}
❼ java標准輸出對象,需要覆蓋什麼方法
toString方法,將對象中每個屬性即變數值輸出拼接的字元串。
❽ java 用對象數組怎麼輸入輸出
輸入,就是逐個對象的逐個屬性輸入。。。。。。。對象覆蓋toString,可以使用System.out.println()逐個輸出
❾ java如何輸出和輸入一個類的所有對象
你可以參考一下這段代碼,可以幫助你理解對象的讀寫:
import java.io.*;
//Proct類,必須實現Serializable介面
class Proct implements Serializable
{
int ID;
String name;
String categories;
double proctPrice;
Proct(int id, String nm, String categ,double price)
{
ID =id;
name=nm;
categories = categ;
proctPrice = price;
}
}
public class Ex8_12
{
public static void main(String args[])
{
Ex8_12 os = new Ex8_12();
os.saveObj();
os.readObj();
}
//儲存數據到文件里
public void saveObj()
{
Proct pro = new Proct(1234, "apple", "computer", 9999);
try
{
FileOutputStream fo = new FileOutputStream("o.dat");
ObjectOutputStream so = new ObjectOutputStream(fo);
so.writeObject(pro);
so.close();
}
catch(Exception e)
{
System.err.println(e) ;
}
}
//從文件里讀出數據
public void readObj()
{
Proct prod;
try
{
FileInputStream fi = new FileInputStream("o.ser");
ObjectInputStream si = new ObjectInputStream(fi);
prod = (Proct)si.readObject();
si.close();
System.out.println("ID: " + prod.ID);
System.out.println("name: " + prod.name);
System.out.println("age: " + prod.categories);
System.out.println("dept.: " + prod.proctPrice);
}
catch(Exception e)
{
System.err.println(e);
}
}
}
❿ java 用戶輸入指定數據輸出該對象的所有屬性
String name;//定義一個字元串
name=uesr.next();//輸入字元串
if(name.compareTo("羅斯")==0){//String類型的對象的內置比較器;如果返回值為0,name=="羅斯"
.....
}
else if(name.compareTo("小兵")==0){
...
}