使用线程逐个打印字符串字符

时间:2016-12-01 15:38:35

标签: java multithreading java-threads

我试图在动画横幅上逐个打印字符,但我无法获得所需的结果。

我使用我的代码获得结果,但不是我要找的那个。我也得到了人物的旗帜和结果。

但这些角色彼此重叠 请检查以下代码

@Configuration
class DevbConfig {

    @Bean(name = "devbDataSource")
    DataSource devbDataSource() {
        try {
            return new SimpleDriverDataSource(DriverManager.getDriver("jdbc:..."), "jdbc:...", "username", "password");
        } catch (SQLException e) {
            throw new RuntimeException(e);
        }
    }

    @Bean(name = "devbJdbc")
    JdbcTemplate devbJdbc(@Qualifier("devbDataSource") DataSource dataSource) {
        return new JdbcTemplate(dataSource);
    }

}

这是我的代码,但是没有得到我想要的结果。

2 个答案:

答案 0 :(得分:0)

似乎在你g.drawString("\t"+c,10,100);的呼叫中,坐标保持不变。看起来它应该以某种方式沿x轴移动,具体取决于字母编号。试试这个:

int xLetterDifference = 6;
g.drawString("\t"+c, 10 + xLetterDifference  * i ,100);

更改xLetterDifference的值以调整字母之间的距离

答案 1 :(得分:0)

这里有一些错误 第一:

}//end of run method

一个大括号是多余的

第二:

for (int i=0;i<=str.length() ;i++ )

应该是:

for (int i=0; i < str.length(); i++)

第三

g.drawString("\t" + c, 10 + PRINT_FACTOR * i, 100);

其中PRINT_FACTOR应由expirement计算或选择