标签: println

为什么我的图形代码不会运行,除非代码块中有System.out.println?

我有这个方法paint()接收Graphics2D参数.发生的奇怪事情是,除非存在System.out.println(我在下面的块中注释掉),否则画布不会绘制任何内容.

public class Map{

    public void paint(Graphics2D g){

        //fill background to black
        g.setColor(Color.black);
        g.fillRect(0, 0, TILE_SIZE*WIDTH, TILE_SIZE*HEIGHT);

        //draw the tiles and buildings

        for(int i=0;i<WIDTH;i++){
            for(int j=0;j<HEIGHT;j++){
                if(map[j][i] == CLEAR){
                    //System.out.println("");
                    g.setColor(Color.gray);
                    g.fillRect(i*TILE_SIZE, j*TILE_SIZE, TILE_SIZE, TILE_SIZE);
                    g.setColor(Color.red);
                    g.drawRect(i*TILE_SIZE, j*TILE_SIZE, TILE_SIZE, TILE_SIZE);

                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在这里,我使用BufferStrategy在Canvas上绘制并将其添加到Frame.这个方法在Map类中,它将从BufferStrategy的getDrawGraphics()方法传递一个Graphics2D(我希望很多人都熟悉这些东西来理解我在做什么).

public class MapTest extends Canvas{

    private Map map;

    public MapTest(){

        Frame frame = new Frame("MAP");
        frame.add(this);
        frame.setVisible(true);

        createBufferStrategy(2);
        strategy = getBufferStrategy();

        //draw the map

        Graphics2D g = (Graphics2D) strategy.getDrawGraphics();
        //g.translate(100, 100);
        map.paint(g);

        g.dispose();
        strategy.show(); …
Run Code Online (Sandbox Code Playgroud)

java graphics println

5
推荐指数
1
解决办法
244
查看次数

在JavaFX TableView中显示数据库中的项目

好的,所以我是新手,我一直在寻找两周的时间来尝试将一个SQL结果集打印到由JavaFX Scene Builder制作的TableView上.我可以使用System.out.println打印我的结果集并且数据是正确的,但是当我尝试将它放入List时,我的tableview显示一列为0,另一列为空.我正在尝试打印List(println),但是我得到了对象指针(?)而不是数据,所以我无法看到我是否正确地从ResultSet传递到List.

任何帮助将不胜感激......我想了解这个概念,而不仅仅是得到答案.

这是我的控制器代码:

public class TesterUIController implements Initializable {

    @FXML
    private TableView<dataClass> Table;
    @FXML
    private Button TestButton;
    @FXML
    private TableColumn<dataClass, Integer> colKey;
    @FXML
    private TableColumn<dataClass, String> colSalesNo;

    public static void main (String[] args) {
        System.out.println("Main has run");
    }


    /**
     *
     * @param fxmlFileLocation
     * @param resources
     */
    @Override
    public void initialize(URL fxmlFileLocation, ResourceBundle resources) {
            TestButton.setOnAction(new EventHandler<ActionEvent>() {

                @Override
                public void handle(ActionEvent event) {
                    System.out.println("Button Pressed");
                    colKey.setCellValueFactory(new PropertyValueFactory<dataClass, Integer>("Key"));
                    colSalesNo.setCellValueFactory(new PropertyValueFactory<dataClass, String>("SalesNo"));

                    Table.getItems().setAll(gobbledyGook());

                }
            } );
    }

    /* …
Run Code Online (Sandbox Code Playgroud)

javafx list resultset tableview println

5
推荐指数
1
解决办法
1万
查看次数

我们可以在控制台上打印java消息而不使用main方法,静态变量和静态方法吗?

public class Test {

/**
 * @param args
 */

// 1st way
public static void main(String[] args) {
    // TODO Auto-generated method stub
    System.out.println("Test....!!!!!");
}

// 2nd way
static{
System.out.println("Test....!!!!!");
System.exit(1);
}

// 3rd way
private static int i = m1();
public static int m1(){
    System.out.println("Test...!!!!");
    System.exit(0);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

除此之外,我们可以以任何其他方式打印消息.

java console println

5
推荐指数
1
解决办法
3971
查看次数

我的Android Studio的控制台不会打印日志消息

我在Android Studio中创建了一个Hello,World项目来测试使用System.out.println().我相信日志消息应该在控制台中打印,但事实并非如此.我使用Android Studio AI-130.737825和JRE:1.7.0_25.测试代码如下:

package com.example.consoletest;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    System.out.println("please print me in the console");
    setContentView(R.layout.activity_main);

}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
Run Code Online (Sandbox Code Playgroud)

console android println android-studio

5
推荐指数
1
解决办法
2万
查看次数

如何`Serial.print()`"完整"十六进制字节?

我正在编程Arduino,我正在尝试Serial.print()十六进制格式的字节"我的方式"(继续阅读更多信息).

也就是说,通过使用以下代码

byte byte1 = 0xA2;
byte byte2 = 0x05;
byte byte3 = 0x00;

Serial.println(byte1, HEX);
Serial.println(byte2, HEX);
Serial.println(byte3, HEX);
Run Code Online (Sandbox Code Playgroud)

我在串行监视器中得到以下输出:

A2
5
0
Run Code Online (Sandbox Code Playgroud)

但是我想输出以下内容:

A2
05
00
Run Code Online (Sandbox Code Playgroud)

在的话,我想打印的"全"的十六进制值包括0S(05而不是000代替0).

我该怎么做?

c++ hex byte arduino println

5
推荐指数
2
解决办法
3万
查看次数

println中的Scala String Interpolation - 使用点表示法访问元素

我有一个user具有一些属性的对象,我可以使用点表示法访问.

例如,user.fullName输出一个String之类的Firstname Lastname.

如何在println使用字符串插值的语句中访问这些属性?

我尝试过以下方法:

println(s"user's full name is $user.fullName")
Run Code Online (Sandbox Code Playgroud)

但是,它似乎不适用于点表示法,只解析整个$user对象,将剩余fullName部分解释为字符串而不是属性.这输出错误:

>>用户的全名是User(...).fullName

以下是我的追求:

>>用户的全名是名字姓氏

帮助赞赏!

syntax scala string-interpolation println

5
推荐指数
1
解决办法
1723
查看次数

println中的可选("var")

我遇到了问题,如果我尝试打印var我有时会得到一个"可选("var")"如果我尝试登录或打印到标签,但是当我没有得到它.

看这里

ViewController.swift

import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        NSUserDefaults.standardUserDefaults().setObject("notWorking", forKey: "testvar")
        NSUserDefaults.standardUserDefaults().synchronize()
        println(NSUserDefaults.standardUserDefaults().stringForKey("testvar"))
        var test = "working"
        println(test)
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}
Run Code Online (Sandbox Code Playgroud)

有人可以解释这个"可选"出现的时间及其用途吗?我怎么能删除它?

var println swift

5
推荐指数
1
解决办法
2106
查看次数

在java中同时将数据写入控制台printinf信息

我想知道如何控制控制台打印格式.我的问题是我有2个线程,其中一个不断地向控制台输出信息,另一个不断要求用户写信息,但在写入时如果另一个线程打印出来的东西,它会切断用户正在写的短语并分割它.你怎么控制它?

我的线程代码1:

//Definition of variables

while (exit == false) {
    scanner = new Scanner(System.in);
    message = scanner.nextLine();
}

//Code to use user input
Run Code Online (Sandbox Code Playgroud)

我的帖子代码2:

//Definition of variables

while (receive.getExecutingState()) {  
    srvMsg = receive.Receive();
    System.out.println(srvMsg);
}
Run Code Online (Sandbox Code Playgroud)

控制台输出:

No more data to show.
No more data to show.
hNo more data to show.
eNo more data to show.
llo
Run Code Online (Sandbox Code Playgroud)

我希望它在用户写入数据时保持打印消息,但不要分割它正在编写的内容.

提前致谢!

编辑:正如@Thomas所说,我想以更清晰的方式,是保持用户在控制台底部写的文本,其余的都在更新.

java console multithreading println java.util.scanner

5
推荐指数
1
解决办法
803
查看次数

Kotlin 的 REPL println 不打印到新行,而是将所有内容打印到同一行

我正在使用 Intellij Idea 的 Kotlin REPL。

当我输入这个时:

println("line 1 ")
println("line 2 ")
 
print("same ")
print("line")
Run Code Online (Sandbox Code Playgroud)

我希望这个输出:

"line 1 " 
"line 2 "
"same line"
Run Code Online (Sandbox Code Playgroud)

但相反,我得到:

"line 1 line 2 same line"
Run Code Online (Sandbox Code Playgroud)

为什么?

REPL 控制台输出

println kotlin

5
推荐指数
1
解决办法
207
查看次数

将 println 设为宏有什么好处?

在这段代码中,有一个!println

fn main() {
    println!("Hello, world!");
}
Run Code Online (Sandbox Code Playgroud)

在我见过的大多数语言中,打印操作是一个函数。为什么它是 Rust 中的宏?

println rust

5
推荐指数
2
解决办法
191
查看次数