Você está aqui: Cards de |
||
|
||
|
|
||
JavaScript ::: Dicas & Truques ::: Set (Conjunto) |
Como converter um Set em um Array JavaScript usando a função Array.from()Quantidade de visualizações: 1390 vezes |
|
Em algumas situações nós gostaríamos de tratar um objeto Set da linguagem JavaScript como se ele fosse um Array, ou seja, um vetor (matriz de apenas uma linha e várias colunas). Para estes casos nós podemos usar o método Array.from(), adicionado à linguagem JavaScript na revisão ECMAScript 2015 (ES6 ou ECMAScript 6). Este método recebe vários objetos, entre eles Map e Set, e retorna um array. Assim, veja um trecho de código no qual criamos um Set com três elementos, usamos o método Array.from() para obter um Array a partir dele e, em seguida, percorremos e exibimos os elementos do array. Eis o código completo para o exemplo:
<!doctype html>
<html>
<head>
<title>O objeto Set do JavaScript</title>
</head>
<body>
<script type="text/javascript">
// vamos criar um novo conjunto contendo
// 3 linguagens de programação
var linguagens = new Set(["Java", "PHP", "Delphi"]);
// agora vamos converter este Set em um Array
var vetor = Array.from(linguagens);
// vamos percorrer os elementos do vetor
for(var i = 0; i < vetor.length; i++){
document.writeln(vetor[i] + "<br>");
}
</script>
</body>
</html>
Ao executar este código nós teremos o seguinte resultado: Java PHP Delphi |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como excluir todos os itens de uma ListBox do Delphi - Como remover todos os itens da ListBox usando a função ClearQuantidade de visualizações: 14903 vezes |
Em algumas situações nós precisamos excluir todos os itens de uma ListBox. Para tais situações podemos usar o método Clear da classe ListBox. Veja:procedure TForm1.Button2Click(Sender: TObject); begin // vamos excluir todos os itens da ListBox ListBox1.Clear; // poderíamos também usar // ListBox1.Items.Clear; end; Note que podemos também chamar o método Clear diretamente no objeto Items da ListBox, embora a chamada na ao método Clear da lista seja mais comum. É possível também excluir os itens de uma ListBox individualmente chamando a função Delete() no objeto Items. Neste caso nós usamos um laço e percorremos todos os elementos da lista e os excluímos um a um. É importante, para estes casos, lembrarmos de percorrer os itens do último para o primeiro. Caso esta regra não seja obedecida, poderá haver erros de acesso durante a exclusão. Veja o código:
procedure TForm1.Button2Click(Sender: TObject);
var
i: Integer;
begin
// vamos percorrer todos os itens da ListBox do último
// para o primeiro
for i := ListBox1.Items.Count - 1 downto 0 do
begin
// vamos excluir o item no índice correspondente
ListBox1.Items.Delete(i);
end;
end;
Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Classes e Componentes ::: JTextArea |
Java Swing - Como adicionar um JPopupMenu a um JTextAreaQuantidade de visualizações: 4 vezes |
|
Neste exemplo mostrarei como é possível associar um JPopupMenu a um JTextArea. Dessa forma, quando clicarmos com o botão auxiliar na área de texto, nós teremos algumas opções de menu, tais como copiar, colar, selecionar tudo, etc. Veja o resultado na imagem abaixo: ![]() E aqui está o código Java Swing completo para o exemplo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Estudos extends JFrame{
JTextArea textArea;
JPopupMenu popup;
JMenuItem selecionar;
public Estudos() {
super("Uso de JPopupMenu em um JTextArea");
Container c = getContentPane();
FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
c.setLayout(layout);
textArea = new JTextArea(10, 20);
JScrollPane scrollPane = new JScrollPane(textArea);
textArea.addMouseListener(
new MouseAdapter(){
@Override
public void mouseReleased(MouseEvent e){
if(e.isPopupTrigger())
popup.show(e.getComponent(), e.getX(),
e.getY());
}
}
);
// cria o JPopupMenu
popup = new JPopupMenu();
selecionar = new JMenuItem("Selecionar Tudo");
selecionar.addActionListener(
new ActionListener(){
@Override
public void actionPerformed(ActionEvent ev){
textArea.requestFocus();
textArea.selectAll();
}
}
);
popup.add(selecionar);
// fim menu
c.add(scrollPane);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como converter graus em radianos em Python - Trigonometria em PythonQuantidade de visualizações: 3333 vezes |
|
Quando estamos trabalhando com trigonometria na linguagem Python, é importante ficarmos atentos ao fato de que todos os métodos e funções trigonométricas em Python recebem seus argumentos em radianos, em vez de graus. Nesta dica veremos como converter graus em radianos (sem a chatice de ficar relembrando regra de três). Veja a fórmula abaixo: \[Radianos = Graus \times \frac{\pi}{180}\] Agora veja como esta fórmula pode ser escrita em código Python:
import math
# função principal do programa
def main():
# valor em graus
graus = 30
# obtém o valor em radianos
radianos = graus * (math.pi / 180)
# mostra o resultado
print(graus, "graus convertidos para",
"radianos é", radianos)
if __name__== "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: 30 graus convertidos para radianos é 0.5235987755982988 Por fim, saiba que a linguagem Python nos oferece o método math.radians() que nos permite converter ângulos em graus para radianos. Meu propósito nesta dica foi mostrar a você como o cálculo de conversão pode ser escrito em Python. Em outras dicas dessa seção abordaremos o método math.radians(). |
Ruby ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como acessar variáveis de instâncias para leitura em Ruby sem a necessidade de métodos acessores usando a função attr_readerQuantidade de visualizações: 7224 vezes |
|
Por padrão, variáveis de instância em Ruby só podem ser acessadas usando métodos acessores, ou seja, uma variável de instância @nome deve ser lida usando um método obter_nome. É possível dispensar o uso de métodos acessores empregando o método attr_reader nos nomes das variáveis que poderão ser acessadas, para leitura, é claro. Veja um exemplo:
# Definição da classe Cliente
class Cliente
attr_reader :nome, :idade
def initialize(nome, idade)
@nome = nome
@idade = idade
end
def obter_nome
@nome
end
def obter_idade
@idade
end
end
# Cria uma instância da classe Cliente e inicializa as
# variáveis de instância @nome e @idade
cliente = Cliente.new("Osmar J. Silva", 35)
# Acessa as variáveis de instância sem a necessidade de
# métodos acessórios
puts cliente.nome
puts cliente.idade
Sem o uso do método attr_reader, a linha: puts cliente.nome causaria o seguinte erro: teste.rb:25: undefined method `nome' for #<Cliente:0x27f540c @nome="Osmar J. S ilva", @idade=35> (NoMethodError) |
Desafios, Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





