我正在制作一个简单的计算器,这是我的代码。
public static void main(String[] args) {
int x = 3;
int y = 7;
char w = '+';
System.out.println(x+w+y+"="+(x+y));
}
Run Code Online (Sandbox Code Playgroud)
结果显示为“53 = 10”,我不明白为什么“+”不会出现以及 53 来自何处。当我在最后一行使用 (w) 而不是 w 时,会出现正确的结果“3+7=10”。
我正在尝试修复我写的脚本:
import java.util.Scanner;
public class Line2
{
public static void main (String [] args)
{
Scanner scan = new Scanner (System.in);
System.out.println ("Please enter 4 integers");
int x1 = scan.nextInt();
int y1 = scan.nextInt();
int x2 = scan.nextInt ();
int y2 = scan.nextInt ();
double distance;
//Asking the user to insert coordinates of both points and setting double
// on distance in order to properly calculate the square root
distance = Math.sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1));
System.out.print( "the length of the line …Run Code Online (Sandbox Code Playgroud) 我做了一些关于System.out.print()和的研究,System.out.println()并且我发现System.out.println()在印刷线的末尾添加了行尾.
System.out.println("Test");
Run Code Online (Sandbox Code Playgroud)
仅输出:
Test
Run Code Online (Sandbox Code Playgroud)
但不打印行尾.
System.out.print("Test");
Run Code Online (Sandbox Code Playgroud)
仅输出:
Test
Run Code Online (Sandbox Code Playgroud)
但不会结束这条线并为其他单词或数字等留下一些地方等.
更具说明性的方式是:
Test_____________________________________________ (All "blank" spots)
Run Code Online (Sandbox Code Playgroud)
有没有办法System.out.print()在这个词之后直接强行结束Test?用法%会删除"空白"斑点吗?
或者一种方法来编写一个函数,在我使用多个System.out.print()打印句子后会结束这一行?
举个例子 :
System.out.print("Test);
System.out.print("Test);
Run Code Online (Sandbox Code Playgroud)
将一个纯粹的前哨:
Test Test
Run Code Online (Sandbox Code Playgroud)
喜欢 System.out.println("Test Test")
我编写了这个程序来创建一个列表,然后使用该列表来填充一个数组.然后magicCheck方法检查矩阵是否是魔方.我最初把它写成一个大小为4x4的定义矩阵.当我这样做时,一切都很好.现在我想让用户决定数组的大小(nxn).添加代码以提示用户输入n,并基于nxn而不是4x4创建矩阵后,我的printMatrix方法已停止工作.
当我按原样运行程序,输入n = 2,first = 2,diff = 2,这是我得到的输出:"输入数组的大小(格式为nxn),n:4先输入,差异:2 2
这不是一个神奇的广场."
谁能告诉我为什么printMatrix不再有效?另外,我知道我的magicCheck方法对循环很邋and,我确信有更好的方法来处理它,但我仍然非常新,并将它拼凑在一起以任何方式让它工作.请温柔:]
这是我的代码:
import java.util.*;
public class MagicSquare
{
static int row, col, n;
static final int rows = n;
static final int columns = n;
static final int listSize = (n*2);
static Scanner console = new Scanner (System.in);
public static void createArithmeticSeq(int [] list)
{
//prompt user for array size
System.out.println("Enter size of array (in form nxn), n:");
n = console.nextInt();
int first;
int diff;
//prompt user for first and …Run Code Online (Sandbox Code Playgroud) 我今天刚刚开始一个新的java项目,我遇到了println的问题.这是我的主要方法:
public static void main(String[] args) {
String stringNumGuards = JOptionPane.showInputDialog("How any guards do you have?");
int numGuards = Integer.parseInt(stringNumGuards);
Controller headGuard = new Controller();
System.out.println("You have ", numGuards, " guards");
} //main
Run Code Online (Sandbox Code Playgroud)
javac输出
Controller.java:10: cannot find symbol
symbol : method println(java.lang.String,int,java.lang.String)
location: class java.io.PrintStream
System.out.println("You have ", numGuards, " guards");
Run Code Online (Sandbox Code Playgroud)
我做错了什么?我之前从未遇到过println的问题.
好的,所以我有一个非常大的Java项目,我已经工作多年了(游戏,如果你必须知道的话).
不幸的是,一条神秘的信息已经开始被打印出来.无论我的搜索时间长短,我都无法确定消息的位置.
我知道你可以覆盖println方法,我很好奇是否有可能在打印的消息上附加某种调试信息?就像从或许它打印的行或文件?我尝试在谷歌搜索这个,但它只是太详细的问题,我找不到答案.
更糟糕的是,这个消息非常含糊不清.它只是"-1".
至少我现在知道使用适当的记录器而不是简单的println().
In System.out.println,println是JAVA中的访问者或变种者方法吗?
谢谢....
我正在做java分配,我遇到了这个代码.
int x=3, y=5;
System.out.println(x + y + " = " + y + x);
Run Code Online (Sandbox Code Playgroud)
输出为"8 = 53".为什么要评估第一个x + y并打印最后一个y和x表达式?让我疑惑.Thanx提前的家伙.
在Swift 2之前,你可以通过这样的小帮手隐藏你所有的println()
func println(object: Any) {
#if DEBUG
Swift.println(object)
#endif
Run Code Online (Sandbox Code Playgroud)
如果你改成这个
func print(object: Any) {
#if DEBUG
Swift.print(object)
#endif
Run Code Online (Sandbox Code Playgroud)
它按预期工作,但print()有一个新的appendLine功能.所以在你的代码中你可以写
println("Test", appendNewLine: false)
Run Code Online (Sandbox Code Playgroud)
但是,这样做意味着上面提到的助手将不再起作用.有关如何解决此问题的任何建议.非常感谢你.
我正在参加关于Golang的'Go Tour of GO'教程和这段代码:
package main
import (
"fmt"
"math"
)
func pow(x, n, lim float64) float64 {
if v := math.Pow(x, n); v < lim {
return v
} else {
fmt.Printf("%g >= %g\n", v, lim)
}
// can't use v here, though
return lim
}
func main() {
fmt.Println(
pow(3, 2, 10),
pow(3, 3, 20),
)
}
Run Code Online (Sandbox Code Playgroud)
将打印"27> = 20 9 20".
我很困惑,为什么它不是"9 27> = 20 20"
不应该第一次打电话给pow(3,2,10)返回9,打印它,然后打电话给pow(3,3,20)并打印剩下的?