java多行字元串
1. 用java編寫一個應用程序:要求用戶輸入一系列字元串,每個字元串佔一行 求高手幫忙。。。
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class InputString{
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String str;
List<String>高冊 list=new ArrayList<String>();
System.out.println("輸入的多行數據:");
while((str=s.nextLine())!=null&&!str.trim().equals("") ){
list.add(str);
}
System.out.println("輸攔野入的內容為:");
for(int i=0;i<簡念喊list.size();i++)
System.out.println(list.get(i));
}
}
2. java如何讀取多行字元串的行數
importjava.io.BufferedReader;
importjava.io.FileNotFoundException;
import帶罩戚蠢陵java.io.FileReader;
importjava.io.IOException;
/**
*讀取文件內容並統計行數
*@authoryoung
*
*/
publicclassBufferedReaderTest{
publicstaticvoidmain(String[]args){
BufferedReaderbr=null;
intline=0;
Stringstr=null;
try{
br=newBufferedReader(newFileReader("c:\1.txt"));
while((str=br.readLine())!=null){
System.out.println("文件內容:"+str);
++line;
// //讀取前4行內容
// if(line>=4){
// break;
// }
}
System.out.println(" 文件行數:"+line);
}catch(FileNotFoundExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}catch(IOExceptione){
//TODO悶碰Auto-generatedcatchblock
e.printStackTrace();
}finally{
if(br!=null){
try{
br.close();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
}
}
3. 在Java中怎麼實現:統計從鍵盤上輸入的字元串列數。
加個計數器搭卜就叢枝山可以了,每一行累加一次,看圖注釋滲中!
4. Java中如何將一個較長的字元串分成多行了書寫
把大的list分成一個個小的list, 再用map儲存
5. java如何 把多個{}中的多行字元串轉換為一行一行的格式
具體的字元串.replaceAll("\n", "");
6. java里的事件接收鍵盤上的輸入字元 還有如何在JFrame中顯示多行文本
socket用於通訊
swing中JTextArea組件是用於顯源廳猜示多行文本的!
示例(參考網路)伏絕 有問題再追問,goodluck!~
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
public class MyServer extends JFrame implements ActionListener{
JTextArea jta;
JTextField jtf;
JButton jb;
JPanel jp;
ServerSocket ss;
Socket socket;
//網路輸入流
Scanner sc;
//網路輸出流
PrintWriter pw;
public MyServer()
{
jta = new JTextArea();
jtf = new JTextField(15);
jb = new JButton("發送");
jp = new JPanel();
jp.add(jtf);
jp.add(jb);
JScrollPane jsp = new JScrollPane(jta);
this.add(jsp,BorderLayout.CENTER);
this.add(jp,BorderLayout.SOUTH);
jb.addActionListener(this);
jtf.addActionListener(this);
//展現
this.setTitle("服務雹型器");
this.setSize(300,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
// 開放埠
try {
ss = new ServerSocket(9000);
System.out.println("等待連接");
socket = ss.accept();
System.out.println("已連接");
//網路輸入流
sc = new Scanner(socket.getInputStream());
//網路輸出流
pw = new PrintWriter(socket.getOutputStream(),true);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
while(true)
{
//接受客戶端發送數據
String str = sc.nextLine();
//顯示多行文本框中
jta.append("客戶端說"+str+" ");
}
}
public static void main(String[] args)
{
new MyServer();
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==jb || e.getSource()==jtf)
{
//向客戶端發送數據
pw.println(jtf.getText());
//向多行文本框輸入歷史聊天記錄信息
jta.append("伺服器說:"+jtf.getText()+" ");
//清空單行文本框內容
jtf.setText("");
}
}
}
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
//客戶端程序
public class MyClient extends JFrame implements ActionListener{
JTextArea jta;
JTextField jtf;
JButton jb;
JPanel jp;
Socket socket;
//網路輸入流
Scanner sc;
//網路輸出流
PrintWriter pw;
public MyClient()
{
jta = new JTextArea();
jtf = new JTextField(15);
jb = new JButton("發送");
jp = new JPanel();
jp.add(jtf);
jp.add(jb);
JScrollPane jsp = new JScrollPane(jta);
this.add(jsp,BorderLayout.CENTER);
this.add(jp,BorderLayout.SOUTH);
jb.addActionListener(this);
jtf.addActionListener(this);
//展現
this.setTitle("客戶端");
this.setSize(300,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
try {
//建立連接
socket = new Socket("127.0.0.1",9000);
//網路輸入流
sc = new Scanner(socket.getInputStream());
//網路輸出流
pw = new PrintWriter(socket.getOutputStream(),true);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
while(true)
{
//接受伺服器發送數據
String str = sc.nextLine();
//顯示在多行文本框
jta.append("伺服器說:"+str+" ");
}
}
public static void main(String[] args) {
new MyClient();
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource()==jb || e.getSource()==jtf)
{
//向伺服器發送數據
pw.println(jtf.getText());
//顯示在多行文本框
jta.append("客戶端說:"+jtf.getText()+" ");
//清空單行文本框
jtf.setText("");
}
}
}
7. 冒號後面值有多行java
java取字元串冒號後的值
java取字元串冒號後的值_java獲取冒號後面的參數猜液實現代碼
超級隊長漢勤
原創
關注
0點贊·985人閱讀
本篇文章小編給大家分享一下java獲取冒號豎掘後面的參數實現代碼,文章代碼介紹的很詳細,小編覺得挺不錯的,現在分享給大家供大家參考,有需要的小夥伴們可以來看看。
代碼如下:
String regEx=":[\\S]+";
String sql=" select * from a where id=:id and name=:zhangsan ";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(sql);
while(m.find()) {
System.out.println(m.group());
}
補充知識:Java-正則表達式:匹配特定字元開頭,數字結尾的任一字元串
1.需求:
通過正則表達式去匹配特定字元開頭,數字結尾的字元串
我這里去匹配字元"+,-,@,="開頭,數字結尾的字元串
2.代碼
public class Test_Leo
{
public static void main(String[] args)
{
String data = "=calc|A!Z 666";
Pattern pattern = Pattern.compile("^[+-@=](.*?)\\d$");
Matcher matcher = pattern.matcher(data);
if(matcher.find())
{
System.out.println(matcher.group());
}else{
System.out.println("nothing");
}
}
}
3.結果
4.解釋:
^:定義了以什麼開始
[+-@=]:匹配+-@= 任意字元余兆核
(.*?):匹配任意零個或者多個字元
d:匹配單個數字
\d$:匹配數字結尾