小编Bli*_*ter的帖子

何时使用队列而不是arraylist

在ArrayList上使用Queue的一个基本参数是Queue保证FIFO行为.

但是如果我向ArrayList添加10个元素然后从第0个元素开始迭代元素,那么我将按照添加它们的顺序检索元素.基本上,这保证了FIFO行为.

与传统的ArrayList相比,Queue有什么特别之处?

java queue arraylist

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

TKinter Canvas“破折号”选项的行为不符合预期

canvas.create_line(50, 500, 950, 500, dash=(5, 1), tags="splitDistance")
Run Code Online (Sandbox Code Playgroud)

这将创建一条如下所示的行:

XXXXX XXXXX XXXXX XXXXX
Run Code Online (Sandbox Code Playgroud)

5 个破折号,1 个空格,然后重复,如本文档所述

但当将1更改为任意值时,间隙大小不会改变

dash=(5, 100)

XXXXX XXXXX XXXXX XXXXX
Run Code Online (Sandbox Code Playgroud)

另一个奇怪的行为是,第一个参数仅在可被 5 整除时才会更改结果,例如:(5, 10, 15, 20...)

dash=(1, 1)

X X X X X X X X X X X X
Run Code Online (Sandbox Code Playgroud)

dash=(4, 1)

X X X X X X X X X X X X
Run Code Online (Sandbox Code Playgroud)

dash=(5, 1)

XXXXX XXXXX XXXXX XXXXX
Run Code Online (Sandbox Code Playgroud)

这是程序和结果的图像:

程序图像和结果

python tkinter python-3.x tkinter-canvas

6
推荐指数
1
解决办法
4862
查看次数

使用 Pygame 创建矩形按钮

我正在尝试rect在 Pygame 中使用按钮。我从红色的退出按钮开始,并检查点击是否在按钮的边界框内。

    import pygame
"""import nemesis.py;"""

pygame.init();
screen = pygame.display.set_mode((400,300));
pygame.display.set_caption("menu");
menuAtivo = True;

start_button = pygame.draw.rect(screen,(0,0,240),(150,90,100,50));
continue_button = pygame.draw.rect(screen,(0,244,0),(150,160,100,50));
quit_button = pygame.draw.rect(screen,(244,0,0),(150,230,100,50));


pygame.display.flip();


while menuAtivo:
    for evento in pygame.event.get():
        print(evento);
        if evento.type == pygame.MOUSEBUTTONDOWN:
            if pygame.mouse.get_pos() >= (150,230):
                if pygame.mouse.get_pos() <= (250,280):
                        pygame.quit();
                    
Run Code Online (Sandbox Code Playgroud)

python pygame button

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

标签 统计

python ×2

arraylist ×1

button ×1

java ×1

pygame ×1

python-3.x ×1

queue ×1

tkinter ×1

tkinter-canvas ×1