waterFlow.rar
为什么打印高度后面都会变成20px
客户端:
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; import java.util.Scanner; public class MutualChatSocketClient { public static void main(String[] args) { try (Socket socket = new Socket("127.0.0.1",8888); Scanner scanner = new Scanner(System.in); BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream())); PrintWriter pw = new PrintWriter(new OutputStreamWriter(socket.getOutputStream())); ) { System.out.println("与服务端连接成功!"); while (true){ //这里一定要注意顺序:客户端先发送消息,再接收服务端的消息 //向服务端发送消息 String clientInput = scanner.nextLine(); pw.println(clientInput); pw.flush(); //接收服务端的消息 System.out.println("服务端说:"+br.readLine()); //服务端想要结束对话 if ("exit".equals(br.readLine())){ break; } } }catch (Exception e){ e.printStackTrace(); System.out.println("客户端启动失败"); } } }
服务端:
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import java.util.Scanner; public class MutualChatSocketServer { public static void main(String[] args) { System.out.println("服务端启动,监听端口号为8888!"); try (ServerSocket serverSocket = new ServerSocket(8888); Socket socket = serverSocket.accept(); Scanner scanner = new Scanner(System.in); BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream())); PrintWriter pw = new PrintWriter(new OutputStreamWriter(socket.getOutputStream())); ){ System.out.println("与客户端连接成功!"); while (true){ //这里一定要注意顺序:服务端先接收客户端的消息,再发送消息 //接收客户端的消息 System.out.println("客户端说:"+br.readLine()); //客户端想要结束对话 if ("exit".equals(br.readLine())){ break; } //向客户端发送消息 String serverInput = scanner.nextLine(); pw.println(serverInput); pw.flush(); } }catch(Exception e){ e.printStackTrace(); System.out.println("服务端启动失败"); } } }
老师您好,我遇到的问题是,客户端向服务端发送消息后,服务端可以收到,但是服务端向客户端发送消息后,客户端却收不到。问题定位到了是循环体中的if语句,我把if语句都注释掉就可以了,请问老师这里的if语句为什么会影响客户端接收服务端口的消息呢,if的条件不满足的话不是直接就跳过了吗?应该不受影响的啊
不应该是1吗?
老师。tomcat在window操作系统需要修改配置环境写pathhome吗我记得好像没有,maven好像要
老师您好,一个域名不是唯一对应的一个IP地址吗,为什么我显示百度域名的IP地址和视频里面的不一样呢
为什么在方法里面不能直接输出罚款数呢,我在方法里输出罚款数永远都等于0
/* * 定义一个方法处理公司的迟到问题; * (1)输入:迟到时间,月薪。 * (2)处理逻辑: 1迟到1~10分钟,警告. 2迟到11-20分钟,罚款100元. * 3迟到21分钟-30分钟,罚款200元. * 4迟到30分钟以上,扣除半日工资。 5迟到1小时以上,按照旷工计算,扣除3日工资. * 输出:罚款金额 */ public class TestMethod { public static void main(String[] args) { int a = handlelate(25,8000); int b = handlelate(62,8000); int c = handlelate(50,7000); System.out.println("罚款总数:"+(a+b+c)); } public static int handlelate (int lateMinute,int salary){ int fakuan = 0; int daysalary = (int)(salary/30); System.out.println("迟到分钟数:"+lateMinute); System.out.println("月薪:"+salary); System.out.println("罚款数:"+fakuan); if (lateMinute<10){ System.out.println("警告!"); } else if (lateMinute<=20) { fakuan = 100; System.out.println("罚款100元"); } else if (lateMinute<=30) { fakuan = 200; System.out.println("罚款200元"); } else if (lateMinute<=60) { fakuan = daysalary/2; System.out.println("扣除半日工资!"); } else if (lateMinute>60) { fakuan = 3*daysalary; System.out.println("扣除三日工资!不想干别干了!"); } return fakuan; } }
老师,我这不知道怎么错的
recv_data = s.recvfrom(1024)
显示这行代码报错,说是
[WinError 10022] 提供了一个无效的参数。
老师,为什么我按照你的命令区敲,输出的跟你的不一样?哪里出了问题?
这个软件在哪里下载?老师
老师 图片加载报错这是什么原因
//守护线程 class Daemon implements Runnable{ @Override public void run() { for (int i = 0; i < 20; i++) { System.out.println(Thread.currentThread().getName()+" "+i); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } } //用户线程 class UserThread implements Runnable{ @Override public void run() { //守护线程为用户线程服务 Thread thread1 = new Thread(new Daemon(),"守护线程:"); //设置该对象为守护线程 thread1.setDaemon(true); //启动守护线程 thread1.start(); /* 守护线程会随着用户线程的死亡而死亡 */ for (int i = 0; i < 5; i++) { System.out.println(Thread.currentThread().getName()+" "+i); try { Thread.sleep(500); } catch (InterruptedException e) { e.printStackTrace(); } } System.out.println("用户线程结束"); } } public class DaemonThreadTest { public static void main(String[] args) { //创建用户线程 Thread thread = new Thread(new UserThread(),"用户线程:"); //启动用户线程 thread.start(); try { Thread.sleep(9000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("主线程结束"); } }
控制台输出如下:
用户线程: 0 守护线程: 0 用户线程: 1 守护线程: 1 用户线程: 2 用户线程: 3 守护线程: 2 用户线程: 4 用户线程结束 守护线程: 3 守护线程: 4 守护线程: 5 守护线程: 6 守护线程: 7 守护线程: 8 主线程结束
老师您好,在代码中我的守护线程守护的是用户线程,但是当用户线程死亡后守护线程并没有随之死亡,而是等到主线程结束守护线程才死亡,请问是哪里出现了问题呢?
老师,sass安装好后,检测不成功
老师,我有个疑惑,就是我们AdminController类中,public String addAdmin(Admin admin)这个方法中的参数是如何获取到的。有点想不明白
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637